2.2.3.31 CLUS_POOL_DRIVE_INFO
The CLUS_POOL_DRIVE_INFO structure contains the information about a storage pool drive. See CLUSCTL_RESOURCE_POOL_GET_DRIVE_INFO (section 3.1.4.3.1.56) for more information.
CLUS_POOL_DRIVE_INFO is a custom-marshaled structure that has fields as follows.
|
|
|
|
|
|
|
|
|
|
1 |
|
|
|
|
|
|
|
|
|
2 |
|
|
|
|
|
|
|
|
|
3 |
|
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
DriveName (512 bytes) |
|||||||||||||||||||||||||||||||
... |
|||||||||||||||||||||||||||||||
... |
|||||||||||||||||||||||||||||||
IncursSeekPenalty |
Padding1 |
Padding2 |
Padding3 |
||||||||||||||||||||||||||||
DriveHealth |
|||||||||||||||||||||||||||||||
DriveState |
|||||||||||||||||||||||||||||||
TotalCapacity |
|||||||||||||||||||||||||||||||
... |
|||||||||||||||||||||||||||||||
ConsumedCapacity |
|||||||||||||||||||||||||||||||
... |
|||||||||||||||||||||||||||||||
Usage |
|||||||||||||||||||||||||||||||
BusType |
|||||||||||||||||||||||||||||||
Slot |
|||||||||||||||||||||||||||||||
EnclosureName (2048 bytes) |
|||||||||||||||||||||||||||||||
... |
|||||||||||||||||||||||||||||||
... |
DriveName (512 bytes): A buffer of 16-bit Unicode characters representing the name of the storage pool drive. This buffer MUST contain the name as a null-terminated Unicode string. If the name is less than the size of the buffer, the string MUST be padded with null characters. The client MUST ignore any padding.
IncursSeekPenalty (1 byte): A flag that indicates whether the storage pool drive incurs any latency when reading from an arbitrary sector.
Padding1 (1 byte): The client MUST ignore this field.
Padding2 (1 byte): The client MUST ignore this field.
Padding3 (1 byte): The client MUST ignore this field.
DriveHealth (4 bytes): The health of the storage pool drive. The server MUST set this field to one of the following values.
-
Value
Description
SpHealthUnknown
0x00000000
The health of the storage pool drive is not known.
SpHealthUnhealthy
0x00000001
The storage pool drive has encountered a severe error condition, such as a media failure.
SpHealthWarning
0x00000002
The storage pool drive has encountered an automatically recoverable error condition, such as an I/O error that can be retried.
SpHealthHealthy
0x00000003
The storage pool drive is healthy.
DriveState (4 bytes): The state of the storage pool drive. The server MUST set this field to one of the following values.
-
Value
Description
SpDriveStateUnknown
0x00000000
The state of the storage pool drive is not known.
SpDriveStateBecomingReady
0x00000001
The storage pool drive is becoming ready.
SpDriveStateCorruptMetadata
0x00000002
The storage pool drive has corrupt metadata.
SpDriveStateFailedMedia
0x00000003
The storage pool drive detected a failure when accessing the media.
SpDriveStateSplit
0x00000004
The storage pool drive metadata was changed while separated from a two-drive pool. The split metadata cannot automatically be corrected.
SpDriveStateStaleMetadata
0x00000005
The storage pool drive has stale metadata
SpDriveStateIOError
0x00000006
The storage pool drive has encountered an I/O error.
SpDriveStateMissing
0x00000007
The storage pool drive is missing.
SpDriveStateOkay
0x00000008
The storage pool drive is ready and in a nominal state.
TotalCapacity (8 bytes): A 64-bit value containing the total capacity, in bytes, of the storage pool drive.
ConsumedCapacity (8 bytes): A 64-bit value containing the amount of capacity, in bytes, that is currently in use on the storage pool drive.
Usage (4 bytes): The usage of the storage pool drive. The server MUST set this field to one of the following values.
-
Value
Description
SpDriveUsageUnknown
0x00000000
The usage of the storage pool drive is unknown.
SpDriveUsageAutoAllocation
0x00000001
The storage pool drive is used for automatic allocation.
SpDriveUsageManualAllocation
0x00000002
The storage pool drive is used for manual allocation.
SpDriveUsageSpare
0x00000003
The storage pool drive is used as a spare.
SpDriveUsageJournal
0x00000004
The storage pool drive is used exclusively for journaling.
SpDriveUsageRetired
0x00000005
The storage pool drive is retired and not used for capacity allocations.
BusType (4 bytes): The type of bus to which the storage pool drive is attached. The server MUST set this field to one of the following values.
-
Value
Description
BusTypeUnknown
0x00000000
The bus type is unknown.
BusTypeScsi
0x00000001
The bus type is small computer system interface (SCSI).
BusTypeAtapi
0x00000002
The bus type is AT attachment packet interface (ATAPI).
BusTypeAta
0x00000003
The bus type is advanced technology attachment (ATA).
BusType1394
0x00000004
The bus type is IEEE 1394, commonly known as FireWire.
BusTypeSsa
0x00000005
The bus type is serial storage architecture (SSA)
BusTypeFibre
0x00000006
The bus type is Fibre Channel.
BusTypeUsb
0x00000007
The bus type is universal serial bus (USB).
BusTypeRAID
0x000000008
The bus type is redundant array of independent disks (RAID).
BusTypeiScsi
0x00000009
The bus type is internet small computer system interface (iSCSI).
BusTypeSas
0x0000000A
The bus type is serial attached SCSI (SAS).
BusTypeSata
0x0000000B
The bus type is serial ATA (SATA).
BusTypeSd
0x0000000C
The bus type is secure digital (SD).
BusTypeMmc
0x0000000D
The bus type is multimedia card (MMC).
BusTypeVirtual
0x00000000E
The bus type is virtual.
BusTypeFileBackedVirtual
0x00000000F
The bus type is file-backed virtual.
BusTypeSpaces
0x00000010
The bus type is Spaces.
Slot (4 bytes): A 32-bit value containing the slot in which the storage pool drive is located.
EnclosureName (2048 bytes): A buffer of 16-bit Unicode characters representing the name of the enclosure in which the storage pool drive is located. This buffer MUST contain the name as a null-terminated Unicode string. If the name is less than the size of the buffer, the string MUST be padded with null characters. Any such padding MUST be ignored.