[SCSI] st: add option to use SILI in variable block reads

Add new option MT_ST_SILI to enable setting the SILI bit in reads in variable
block mode. If SILI is set, reading a block shorter than the byte count does
not result in CHECK CONDITION. The length of the block is determined using the
residual count from the HBA. Avoiding the REQUEST SENSE command for every
block speeds up some real applications considerably.

Signed-off-by: Kai Makisara <kai.makisara@kolumbus.fi>
Signed-off-by: James Bottomley <James.Bottomley@HansenPartnership.com>
This commit is contained in:
Kai Makisara
2008-02-24 22:23:24 +02:00
committed by James Bottomley
parent d35055a0f2
commit 40f6b36c62
5 changed files with 51 additions and 6 deletions

View File

@@ -3,7 +3,7 @@
Copyright 1995-2003 Kai Makisara.
Last modified: Mon Apr 7 22:49:18 2003 by makisara
Last modified: Thu Feb 21 21:47:07 2008 by kai.makisara
*/
#ifndef _ST_OPTIONS_H
@@ -94,6 +94,10 @@
The default is BSD semantics. */
#define ST_SYSV 0
/* If ST_SILI is non-zero, the SILI bit is set when reading in variable block
mode and the block size is determined using the residual returned by the HBA. */
#define ST_SILI 0
/* Time to wait for the drive to become ready if blocking open */
#define ST_BLOCK_SECONDS 120