IOCTL_EHSTOR_DRIVER_UPDATE_LBA_FILTER_TABLE control code

This IOCTL is used to inform the enhanced storage (EHSTOR) class driver of changes to the LBA filter table. Bands managed by the silo driver are composed of LBA ranges. The silo driver notifies the EHSTOR class driver of updates to the set of bands it controls with this IOCTL.

Input Parameters

The input buffer at Irp->AssociatedIrp.SystemBuffer must contain a structure of type LBA_FILTER_TABLE. This structure contains the filter table and the total entries it contains. An array LBA_FILTER_TABLE_ENTRY structure follows LBA_FILTER_TABLE.

Output Parameters

None.

I/O Status Block

One of the following values can be returned in the Status field.

Status ValueDescription
STATUS_SUCCESSThe LBA filter table was successfully updated.
STATUS_INVALID_BUFFER_SIZEThe input buffer length supplied is of incorrect size.
STATUS_INVALID_PARAMETERThe LBA filter count or an LBA range is specified incorrectly.
STATUS_INSUFFICIENT_RESOURCESThe IOCTL redirection list cannot be copied.
STATUS_NOT_SUPPORTEDThe sending device is not a silo device or banding is not supported.

 

Remarks

The LBA filters cannot overlap or be empty. The LBA filters do not have to be sorted in any way. If an LBA range is being unlocked, an IOCTL_EHSTOR_DRIVER_UPDATE_LBA_FILTER_TABLE request should be sent after the LBA range is unlocked on the storage device. Also, if an LBA range is currently being locked, IOCTL_EHSTOR_DRIVER_UPDATE_LBA_FILTER_TABLE must be sent before the LBA range has been locked on the storage device.

Requirements

Version

Available starting with Windows 8

Header

EhStorIoctl.h (include EhStorIoctl.h)

See also

LBA_FILTER_TABLE
LBA_FILTER_TABLE_ENTRY

 

 

Send comments about this topic to Microsoft

Show: