Tejun Heo wrote:
Jeff Garzik wrote:
4) Using [__]scsi_add_device() is a regression from using
scsi_scan_target()
I think it's taken from the hotplug patch store-attached-SCSI-device[1].
Using [__]scsi_add_device() seems to be the only way to reliably obtain
the attached sdev.
We want to continue to use scsi_scan_target(), because that's the
preferred model. In SCSI-land, the target is what receives RPC calls
(ATA commands, for us), which are then dispatched internally to one of
$N logical units (LU) according to the logical unit number (LUN).
In libata, of course, there is only one logical unit attached to the
target, LUN 0.
Regardless, using [__]scsi_add_device() is a regression, because libata
handles the transport layer completely -- and importantly -- handles all
addressing. scsi_add_device() is specifically for H/C/I/L, i.e. SPI
(parallel SCSI) addressing.
Eventually SCSI will reach a point where HCIL is not the only addressing
method. SAS disks, for example, are addressed via a LUN's WWN. SCSI
fibre channel addresses LUNs via WWN as well. Once SCSI core does not
exclusively use HCIL addressing, libata will reap the benefits of using
the proper scsi_target model.
Jeff
-
: send the line "unsubscribe linux-ide" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html