Skip to content

Commit

Permalink
[SCSI] libsas: disable scanning lun > 0 on ata devices
Browse files Browse the repository at this point in the history
Currently mvsas and pm8001 have custom ->slave_alloc implementations to
achieve this.  Uplevel it for all libsas drivers as isci encounters problems
with atapi devices when scanning past lun0.

Just do what Darrick suggested [1], and limit the scan for ata devices.

[1] http://marc.info/?l=linux-scsi&m=116604101119861&w=2

Signed-off-by: Dan Williams <dan.j.williams@intel.com>
Signed-off-by: James Bottomley <JBottomley@Parallels.com>
  • Loading branch information
Dan Williams authored and James Bottomley committed Oct 2, 2011
1 parent ffaac8f commit 2fc62e2
Showing 1 changed file with 8 additions and 2 deletions.
10 changes: 8 additions & 2 deletions drivers/scsi/scsi_transport_sas.c
Original file line number Diff line number Diff line change
Expand Up @@ -1545,8 +1545,14 @@ int sas_rphy_add(struct sas_rphy *rphy)

if (identify->device_type == SAS_END_DEVICE &&
rphy->scsi_target_id != -1) {
scsi_scan_target(&rphy->dev, 0,
rphy->scsi_target_id, SCAN_WILD_CARD, 0);
int lun;

if (identify->target_port_protocols & SAS_PROTOCOL_SSP)
lun = SCAN_WILD_CARD;
else
lun = 0;

scsi_scan_target(&rphy->dev, 0, rphy->scsi_target_id, lun, 0);
}

return 0;
Expand Down

0 comments on commit 2fc62e2

Please sign in to comment.