On Wed, 2006-05-17 at 19:39 -0700, Luben Tuikov wrote: > Apparently you have no detailed knowlege of the implementation of > SCSI storage stacks, for example: driver->fw->interconnect->device. Well, I'm sure I read about it in a comic book somewhere ... > You also fail to understand who the "I" and "T" could be in an > I_T_x_x nexus at each stage of an implementation. > > You also fail to understand that a SAM nexus is not necessarily > established > when queuecommand() is called. I didn't say it was. The point, which you're ignoring, is that when the driver knows the SAM nexus is terminated, it should call ->done() ASAP to inform the mid-layer of this condition, so the mid-layer model of the device interactions follows the SAM interactions as closely as possible. The API you want to introduce and the implementation of it in libata lie to the mid-layer and pretend the nexus still exists when the driver knows it doesn't ... what I'm saying is that I see no reason to do that. James - : 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