On Mon, 2005-06-06 at 11:32 +0300, Liran Schour wrote: > In order to run our OSD SCSI initiator on top of the Linux SCSI layer > we have needed to do the following changes to the SCSI code: > 1. Redefine MAX_COMMAND_SIZE to 256 byte. There's more than just you interested in this one, so separating this feature out from all the rest would be helpful. > 2. Define a new scatter gather structures that includes two virtual buffers > on for data out and one for data in. (implementing bidirectional > commands) > The SCSI middle layer doesn't now this new structure (only ULD and LLD). Yes, this is the nasty one ... and why OSD hasn't been incredibly popular; bidirectional commands necessitate fairly sweeping changes to all LLDs to support. However, I don't see how we can get away without the mid-layer knowing, since it's the entity that constructs the sglists and the sglists have to be separated between the in and out pieces. > 3. The problem above - define a new scsi_do_req that inserts our commands > to > the tail of the Q. Well, the solution, I think, is going to be the block execute one, which will allow head or tail insertion. 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