On Sun, May 25, 2014 at 09:43:35PM +0900, Akinobu Mita wrote: > max_sectors in struct Scsi_Host specifies maximum number of sectors > allowed in a single SCSI command. The data type of max_sectors is > unsigned short, so the maximum transfer length per SCSI command is > limited to less than 256MB in 4096-bytes sector size. (0xffff * 4096) > > This commit increases the SCSI mid level's limitation for max_sectors > upto the block layer's limitation for max_hw_sectors by extending the > data type of max_sectors in struct Scsi_Host and scsi_host_template, > so that SCSI lower level drivers can specify more than 0xffff. > > This change requires the scsi disk (sd) driver to handle the requests > whose transfer length is more than 0xffff with READ_16 or WRITE_16. > Also, this needs to prevent SG_GET_RESERVED_SIZE and SG_SET_RESERVED_SIZE > ioctls for the scsi generic (sg) driver from integer overflow when > converting max_sectors to bytes. > > Signed-off-by: Akinobu Mita <akinobu.mita@xxxxxxxxx> Looks good, but I think this should be three patches, one for the ioctl in sg, one for the command selection in sd, and one to change the field with in the scsi core. -- 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