Brian King wrote:
Jeff Garzik wrote:
James Bottomley wrote:
This really doesn't look correct. What you want is a sata transport
class with a max command length in the host device.
Christoph Hellwig wrote:
this sounds wrong to me. cdb length is a limitation of the host (driver).
A target will reject unknown commands, no matter what length they have.
In practice, CDB length may be limited by both the host and the device.
This applies to ATAPI, and some USB storage too IIRC. For ATAPI, you
read the CDB length from the device's IDENTIFY PACKET DEVICE info page.
So the question remains, do we need to police the CDB length on a per device
basis, or is a per host basis ok? Will we have ATAPI devices falling on the
floor if they get sent too large of a cdb?
It _must_ be limited by both device and host. If you have a device that
supports 16-byte CDBs and a host controller which only supports 12-byte
CDBs, clearly the limit is 12, due to host. However, a reversed
situation (limited by device) is equally plausible/possible.
Jeff
-
: 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