scsi: scsi_transport_sas: Fix the maximum channel scanning issue
After commit37c4e72b06("scsi: Fix sas_user_scan() to handle wildcard and multi-channel scans"), if the device supports multiple channels (0 to shost->max_channel), user_scan() invokes updated sas_user_scan() to perform the scan behavior for a specific transfer. However, when the user specifies shost->max_channel, it will return -EINVAL, which is not expected. Fix and support specifying the scan shost->max_channel for scanning. Fixes:37c4e72b06("scsi: Fix sas_user_scan() to handle wildcard and multi-channel scans") Signed-off-by: Yihang Li <liyihang9@huawei.com> Reviewed-by: John Garry <john.g.garry@oracle.com> Link: https://patch.msgid.link/20260317063147.2182562-1-liyihang9@huawei.com Signed-off-by: Martin K. Petersen <martin.petersen@oracle.com>
This commit is contained in:
1 parent
1333eee56c
commit
d71afa9deb
1 file changed
+1
-1
@@ -1734,7 +1734,7 @@ static int sas_user_scan(struct Scsi_Host *shost, uint channel,
|
|||||||
break;
|
break;
|
||||||
|
|
||||||
default:
|
default:
|
||||||
if (channel < shost->max_channel) {
|
if (channel <= shost->max_channel) {
|
||||||
res = scsi_scan_host_selected(shost, channel, id, lun,
|
res = scsi_scan_host_selected(shost, channel, id, lun,
|
||||||
SCSI_SCAN_MANUAL);
|
SCSI_SCAN_MANUAL);
|
||||||
} else {
|
} else {
|
||||||
|
|||||||
Reference in new issue
Block a user