Message ID | 1483997616-18900-1-git-send-email-emilne@redhat.com (mailing list archive) |
---|---|
State | Accepted, archived |
Headers | show |
>>>>> "Ewan" == Ewan D Milne <emilne@redhat.com> writes:
Ewan> The call to scsi_is_sas_rphy() needs to be made on the SAS
Ewan> end_device, not on the SCSI device.
Ewan> Fixes: 835831c57e9b ("ses: use scsi_is_sas_rphy instead of
Ewan> is_sas_attached") Reviewed-by: Johannes Thumshirn
Ewan> <jthumshirn@suse.de> Signed-off-by: Ewan D. Milne
Ewan> <emilne@redhat.com> ---
Ewan> drivers/scsi/ses.c | 2 +- 1 file changed, 1 insertion(+), 1
Ewan> deletion(-)
Ewan> diff --git a/drivers/scsi/ses.c b/drivers/scsi/ses.c index
Ewan> 8c9a35c..50adabb 100644
Ewan> --- a/drivers/scsi/ses.c
Ewan> +++ b/drivers/scsi/ses.c
Ewan> @@ -587,7 +587,7 @@ static void ses_match_to_enclosure(struct
Ewan> enclosure_device *edev,
Ewan> ses_enclosure_data_process(edev,
Ewan> to_scsi_device(edev->edev.parent), 0);
Ewan> - if (scsi_is_sas_rphy(&sdev->sdev_gendev))
Ewan> + if (scsi_is_sas_rphy(sdev->sdev_target->dev.parent))
Ewan> efd.addr = sas_get_address(sdev);
Ewan> if (efd.addr) {
Ewan> -- 1.8.3.1
James?
On Mon, Jan 16, 2017 at 04:02:24PM -0500, Martin K . Petersen wrote: > >>>>> "Ewan" == Ewan D Milne <emilne@redhat.com> writes: > > Ewan> The call to scsi_is_sas_rphy() needs to be made on the SAS > Ewan> end_device, not on the SCSI device. > > Ewan> Fixes: 835831c57e9b ("ses: use scsi_is_sas_rphy instead of > Ewan> is_sas_attached") Reviewed-by: Johannes Thumshirn > Ewan> <jthumshirn@suse.de> Signed-off-by: Ewan D. Milne > Ewan> <emilne@redhat.com> --- > Ewan> drivers/scsi/ses.c | 2 +- 1 file changed, 1 insertion(+), 1 > Ewan> deletion(-) > > Ewan> diff --git a/drivers/scsi/ses.c b/drivers/scsi/ses.c index > Ewan> 8c9a35c..50adabb 100644 > Ewan> --- a/drivers/scsi/ses.c > Ewan> +++ b/drivers/scsi/ses.c > Ewan> @@ -587,7 +587,7 @@ static void ses_match_to_enclosure(struct > Ewan> enclosure_device *edev, > > Ewan> ses_enclosure_data_process(edev, > Ewan> to_scsi_device(edev->edev.parent), 0); > > Ewan> - if (scsi_is_sas_rphy(&sdev->sdev_gendev)) > Ewan> + if (scsi_is_sas_rphy(sdev->sdev_target->dev.parent)) > Ewan> efd.addr = sas_get_address(sdev); > > Ewan> if (efd.addr) { > Ewan> -- 1.8.3.1 > > James? FWIW I have positive test results from a customer of ours with this as well. Thanks, Johannes
On Mon, 2017-01-09 at 16:33 -0500, Ewan D. Milne wrote: > From: "Ewan D. Milne" <emilne@redhat.com> > > The call to scsi_is_sas_rphy() needs to be made on the > SAS end_device, not on the SCSI device. > > Fixes: 835831c57e9b ("ses: use scsi_is_sas_rphy instead of > is_sas_attached") > Reviewed-by: Johannes Thumshirn <jthumshirn@suse.de> > Signed-off-by: Ewan D. Milne <emilne@redhat.com> Yes, looks good to me as well Reviewed-by: James Bottomley <James.Bottomley@HansenPartnership.com> -- To unsubscribe from this list: send the line "unsubscribe linux-scsi" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html
>>>>> "Ewan" == Ewan D Milne <emilne@redhat.com> writes:
Ewan> The call to scsi_is_sas_rphy() needs to be made on the SAS
Ewan> end_device, not on the SCSI device.
Applied to 4.10/scsi-fixes.
diff --git a/drivers/scsi/ses.c b/drivers/scsi/ses.c index 8c9a35c..50adabb 100644 --- a/drivers/scsi/ses.c +++ b/drivers/scsi/ses.c @@ -587,7 +587,7 @@ static void ses_match_to_enclosure(struct enclosure_device *edev, ses_enclosure_data_process(edev, to_scsi_device(edev->edev.parent), 0); - if (scsi_is_sas_rphy(&sdev->sdev_gendev)) + if (scsi_is_sas_rphy(sdev->sdev_target->dev.parent)) efd.addr = sas_get_address(sdev); if (efd.addr) {