STORAGE_OFFLOAD_READ_OUTPUT structure

The STORAGE_OFFLOAD_READ_OUTPUT structure is the output of an IOCTL_STORAGE_MANAGE_DATA_SET_ATTRIBUTES control code request when the Action member of a DEVICE_DSM_INPUT structure is set to DeviceDsmAction_OffloadRead.

A returned token uniquely identifies the data set ranges requested in DEVICE_DSM_INPUT. In conjunction with DEVICE_DSM_INPUT, the DEVICE_DSM_OFFLOAD_READ_PARAMETERS structure specifies how long the data set ranges identified by the returned token remain available for subsequent writing.

Syntax

typedef struct _STORAGE_OFFLOAD_READ_OUTPUT {
  ULONG                 OffloadReadFlags;
  ULONG                 Reserved;
  ULONGLONG             LengthProtected;
  ULONG                 TokenLength;
  STORAGE_OFFLOAD_TOKEN Token;
} STORAGE_OFFLOAD_READ_OUTPUT, *PSTORAGE_OFFLOAD_READ_OUTPUT;

Members

OffloadReadFlags

Not used. Set to 0.

Reserved

Reserved.

LengthProtected

The total length, in bytes, of data read and held by the copy provider for Token.

TokenLength

The length, in bytes, of Token.

Token

A unique identifier returned by the copy provider, marking the data set ranges that are read.

Remarks

The STORAGE_OFFLOAD_READ_OUTPUT structure is returned at the beginning of the system buffer.

The value for Token is generated by the copy provider of the storage device. The data set ranges included when the DEVICE_DSM_INPUT structure was sent in the IOCTL_STORAGE_MANAGE_DATA_SET_ATTRIBUTES control code request are marked by Token. The data set ranges associated with Token are available for subsequent write requests while the duration in the TimeToLive member of DEVICE_DSM_OFFLOAD_READ_PARAMETERS is valid.

Requirements

   
Minimum supported client Available in Windows 8 and later versions of Windows.
Header ntddstor.h (include Ntddstor.h)

See also

DEVICE_DSM_OFFLOAD_READ_PARAMETERS

DEVICE_DSM_INPUT

IOCTL_STORAGE_MANAGE_DATA_SET_ATTRIBUTES