>>>>> "Jens" == Jens Axboe <axboe@xxxxxxxxx> writes: Jens> That sounds like a very batch design decision. Either the limits Jens> are explicitly given and different, or if not we have to assume Jens> that they are the same as the data limits at least. Imagine a controller that has a 4KB segment, 1 entry limit. If we capped the DI sgl the same way as the data we'd only be able to issue 512-byte requests unless the DI entries happened to be contiguous in memory. For several types of I/O the DI sgl is much longer than the data sgl. Especially if the submitter is using buffer_heads to map 512-byte blocks. And consequently we require vendors to be able to handle the pathological case in which any data scatterlist honoring the segmentation constraints given by the driver can be matched with an integrity scatterlist in which there is a separate entry for each logical block. No vendor has had any problems with this. Therefore there are no block layer data integrity queue limits. If a device appears that does in fact have constraints I have no problems intruducing a set of suitable knobs. -- Martin K. Petersen Oracle Linux Engineering -- 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