The Registry

·Enhanced Scatter/Gather List Support for Very Large SCSI I/O's

The way that a miniport driver interprets NumberOfPhysicalBreaks in PORT_CONFIGURATION_INFORMATION has changed to take full advantage of the capabilities of a controller in some specialized cases where very large I/Os are necessary. NumberOfPhysicalBreaks is either set to SP_UNINITIALIZED_VALUE or to some valid number of physical breaks.

·New Registry Subkey for SCSI Scatter/Gather List Size

The new registry subkey to specify the maximum number of scatter/gather list elements for each device on a given bus is:
\Registry\Machine\System\CurrentControlSet\Services\DriverName\
Parameters\Device
n\MaximumSGList

DriverName is the name of the miniport driver, such as AIC78xx, and n is the bus number assigned at initialization. If a value is present in this subkey at device initialization, the SCSI port driver uses MaximumSGList as the initial value for NumberOfPhysicalBreaks. The miniport driver's HwScsiFindAdapter routine can set NumberOfPhysicalBreaks to a lower value, if appropriate.

The maximum value for MaximumSGList is 255, but use this adjustment sparingly because scatter/gather lists consume nonpaged memory. MaximumSGList is a REG_DWORD.

·New Registry Subkey for Number of Concurrent SCSI Requests

The new registry subkey to specify the maximum number of outstanding requests on a bus is:
\Registry\Machine\System\CurrentControlSet\Services\DriverName\
Parameters\Device
n\NumberOfRequests

DriverName is the name of the miniport driver, such as AIC78xx, and n is the bus number assigned at initialization. This subkey is a REG_DWORD between 16 and 512. Use this adjustment sparingly because SRB extensions consume nonpaged memory.

·New Registry Subkey for Request Timeout

The new registry subkey to configure request timeout is:
\Registry\Machine\System\CurrentControlSet\Services\Disk\
TimeOutValue

This subkey is a REG_DWORD specifying the number of seconds.

Most systems do not need this subkey. If you have a mass storage device that is continually timing out on complex operations, you can use this subkey to set the timeout period to a slightly higher value.