STORAGE_DIAGNOSTIC_DATA structure (ntddstor.h)

STORAGE_DIAGNOSTIC_DATA describes diagnostic data about the storage driver stack. It is provided in the output buffer of an IOCTL_STORAGE_DIAGNOSTIC request.

Syntax

typedef struct _STORAGE_DIAGNOSTIC_DATA {
  ULONG Version;
  ULONG Size;
  GUID  ProviderId;
  ULONG BufferSize;
  ULONG Reserved;
  UCHAR DiagnosticDataBuffer[ANYSIZE_ARRAY];
} STORAGE_DIAGNOSTIC_DATA, *PSTORAGE_DIAGNOSTIC_DATA;

Members

Version

Version of this structure. Set to sizeof(STORAGE_DIAGNOSTIC_DATA).

Size

Specifies the whole size of the structure and the associated data buffer, in bytes.

ProviderId

Specifies the GUID of a diagnostic data provider.

BufferSize

The driver should set BufferSize as follows:

  • If the request is successful, set with the returned buffer size of DiagnosticDataBuffer.
  • If the request failed because of buffer too small, set with the required buffer size for a DiagnosticDataBuffer needed by the provider.
  • If the request failed for any other reason, clear to zero.

Reserved

Reserved for future use.

DiagnosticDataBuffer[ANYSIZE_ARRAY]

Specifies the Diagnostic data buffer.

Requirements

Requirement Value
Minimum supported client Windows 10, version 1709
Header ntddstor.h

See also

IOCTL_STORAGE_DIAGNOSTIC

STORAGE_DIAGNOSTIC_REQUEST