REASSIGN_BLOCKS_EX - NtDoc

Native API online documentation, based on the System Informer (formerly Process Hacker) phnt headers
// ntdddisk.h

typedef struct _REASSIGN_BLOCKS_EX {
  USHORT        Reserved;
  USHORT        Count;
  LARGE_INTEGER BlockNumber[1];
} REASSIGN_BLOCKS_EX, *PREASSIGN_BLOCKS_EX;
View the official Windows Driver Kit DDI reference
// winioctl.h

typedef struct _REASSIGN_BLOCKS_EX {
  WORD          Reserved;
  WORD          Count;
  LARGE_INTEGER BlockNumber[1];
} REASSIGN_BLOCKS_EX, *PREASSIGN_BLOCKS_EX;
View the official Win32 API reference

NtDoc

No description available.

Windows Driver Kit DDI reference (ns-ntdddisk-_reassign_blocks_ex)

_REASSIGN_BLOCKS_EX structure

Description

The REASSIGN_BLOCKS_EX structure is used in conjunction with the IOCTL_DISK_REASSIGN_BLOCKS_EX request to instruct a disk device to reassign the block numbers of the indicated bad blocks to good blocks.

Members

Reserved

Reserved for system use.

Count

Contains the number of blocks in the array pointed to by BlockNumber to reassign.

BlockNumber

Contains an array of block numbers corresponding to damaged blocks. These numbers will be reassigned to good blocks taken from the device's spare block pool.

See also

IOCTL_DISK_REASSIGN_BLOCKS_EX


Win32 API reference (ns-winioctl-reassign_blocks_ex)

REASSIGN_BLOCKS_EX structure

Description

Contains disk block reassignment data. This is a variable length structure where the last member is an array of block numbers to be reassigned. It is used by the IOCTL_DISK_REASSIGN_BLOCKS_EX control code.

Members

Reserved

This member is reserved. Do not use it. Set it to 0 (zero).

Count

The number of blocks to be reassigned.

This is the number of elements that are in the BlockNumber member array.

BlockNumber

An array of Count block numbers, one for each block to be reassigned.

Remarks

The REASSIGN_BLOCKS_EX structure supports drives that have an 8-byte Logical Block Address (LBA), which is typically required for storage devices larger than 2 TB. The REASSIGN_BLOCKS structure used with the IOCTL_DISK_REASSIGN_BLOCKS control code supports devices with up to a 4-byte LBA should be used where possible.

See also

IOCTL_DISK_REASSIGN_BLOCKS

IOCTL_DISK_REASSIGN_BLOCKS_EX

REASSIGN_BLOCKS