[SCSI] scsi_transport_sas: don't scan a non-existent end device
authorJames Bottomley <James.Bottomley@steeleye.com>
Fri, 14 Apr 2006 14:47:59 +0000 (09:47 -0500)
committerJames Bottomley <jejb@mulgrave.il.steeleye.com>
Fri, 14 Apr 2006 20:33:41 +0000 (15:33 -0500)
Any end device that can't support any of the scanning protocols
shouldn't be scanned, so set its id to -1 to prevent
scsi_scan_target() being called for it.

Signed-off-by: James Bottomley <James.Bottomley@SteelEye.com>
drivers/scsi/scsi_transport_sas.c

index 2c96fc5683ff2526993a8a30438d334ed6cc9212..8b6d65e21bae3a23ac362d65ac9b95d57732b6f3 100644 (file)
@@ -845,6 +845,8 @@ int sas_rphy_add(struct sas_rphy *rphy)
            (identify->target_port_protocols &
             (SAS_PROTOCOL_SSP|SAS_PROTOCOL_STP|SAS_PROTOCOL_SATA)))
                rphy->scsi_target_id = sas_host->next_target_id++;
+       else if (identify->device_type == SAS_END_DEVICE)
+               rphy->scsi_target_id = -1;
        mutex_unlock(&sas_host->lock);
 
        if (identify->device_type == SAS_END_DEVICE &&