Or so did I guess, and...
...my guess was wrong then.
Either I misunderstood the semantics of the various hostbyte codes in
the command completion return (and then these semantics are
insufficient) --- or SCSI mid layer or high-level implements them wrong.
But before we dive into the SCSI stack or implement parellelism of SBP-2
reconnect and SCSI probing in fw-sbp2, there is another simple and in
hindsight obvious trick we can try. Stay tuned.
Background for LSML:
In case of unrecoverable transport failures during the execution of
__scsi_add_device, I would like to send appropriate error indicators
from the LLD up to SCSI midlayer so that __scsi_add_device ends in
failure (i.e. returns an error pointer rather than a scsi_device pointer).
Sometimes SCSI core decides to let __scsi_add_device fail, sometimes it
takes the scsi_device offline, sometimes it doesn't do either but
pretends to the LLD that __scsi_add_device was an utter success. Except
that userspace can't do anything with the scsi_device because e.g. READ
CAPACITY couldn't be executed.
--
Stefan Richter
-=====-==--- --=- -=---
http://arcgraph.de/sr/
--