patmans@xxxxxxxxxx said:
> I have some patches from the multi-path that I could break out,
> especially some list iterators - multi-path needs the Scsi_Device
> separated from Scsi_Host. Iterators were added so the underlying
> structures are not visible - that is, so host_queue is not directly
> referenced, and I can put any type of data structure in its place.
> This is one of the broadest changes (potentially affects all adapter
> drivers) in the multi-path patch.
I was planning to introduce the Scsi_[Host,Device,Cmnd] structures to the
concept of struct list_head as part of the error handler re-write. The error
handler needs lists for the concept of reset locality (i.e. dump all commands
for all LUNS of this target, dump all commands for all devices on this bus),
although its a non time critical section, so it wouldn't necessarily matter
having to have it loop over every device to find only the ones it's interested
in.
> Having Scsi_Device on its own list could also help in hot-replacement
> of single pathed devices (Scsi_Host can be removed without having to
> remove a Scsi_Device off of its host_queue).
Isn't this going to cause serious problems for the driverfs stuff?
Effectively you're changing the parent pointer under the device which alters
the layout of the device tree.
> If you make changes in the host/device list(s) please consider that I
> need to have the Scsi_Devices on their own list separate from the
> Scsi_host list.
Could you post some of the details of this (separated from the multi-path
patch if possible)? Thanks,
James
-
To unsubscribe from this list: send the line "unsubscribe linux-scsi" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
|