srb.h) (SRBEX_DATA_NVME_COMMAND 结构
SRBEX_DATA_NVME_COMMAND结构使用户能够以 NVMe 格式构建和发出命令。 此结构目前保留供系统使用。
语法
typedef struct _SRBEX_DATA_NVME_COMMAND {
SRBEXDATATYPE Type;
ULONG Length;
ULONG CommandDWORD0;
ULONG CommandNSID;
ULONG Reserved0[2];
ULONGLONG CommandMPTR;
ULONGLONG CommandPRP1;
ULONGLONG CommandPRP2;
ULONG CommandCDW10;
ULONG CommandCDW11;
ULONG CommandCDW12;
ULONG CommandCDW13;
ULONG CommandCDW14;
ULONG CommandCDW15;
UCHAR CommandType;
UCHAR CommandFlags;
union {
struct {
USHORT P : 1;
USHORT SC : 8;
USHORT SCT : 3;
USHORT Reserved : 2;
USHORT M : 1;
USHORT DNR : 1;
} DUMMYSTRUCTNAME;
USHORT AsUshort;
} CommandStatus;
ULONG QID;
ULONG CommandTag;
ULONG CQEntryDW0;
} SRBEX_DATA_NVME_COMMAND, *PSRBEX_DATA_NVME_COMMAND;
成员
Type
命令类型。 目前,必须将其设置为 SrbExDataTypeNvmeCommand。
Length
此结构的大小(以字节为单位)。
CommandDWORD0
NVMe 命令中的命令 Dword 0 (请参阅 NVMe 规范) 。
CommandNSID
NVMe 命令中的命名空间标识符 (请参阅 NVMe 规范) 。
Reserved0[2]
保留值;请勿使用。
CommandMPTR
NVMe 命令中的元数据指针 (请参阅 NVMe 规范) 。
CommandPRP1
NVMe 命令 (PRP) 条目 1 的物理区域页 (请参阅 NVMe 规范) 。 若要指示存在 PRP 信息,用户必须设置 SRBEX_DATA_NVME_COMMAND_FLAG 的 SRBEX_DATA_NVME_COMMAND_FLAG_PRP_SET_ALREADY标志。
CommandPRP2
NVMe 命令中的 PRP 条目 2 (请参阅 NVMe 规范) 。 若要指示存在 PRP 信息,用户必须设置 SRBEX_DATA_NVME_COMMAND_FLAG 的 SRBEX_DATA_NVME_COMMAND_FLAG_PRP_SET_ALREADY标志。
CommandCDW10
特定于命令的 Dword 10 (请参阅 NVMe 规范) 。
CommandCDW11
特定于命令的 Dword 11 (请参阅 NVMe 规范) 。
CommandCDW12
特定于命令的 Dword 12 (请参阅 NVMe 规范) 。
CommandCDW13
特定于命令的 Dword 13 (请参阅 NVMe 规范) 。
CommandCDW14
特定于命令的 Dword 14 (请参阅 NVMe 规范) 。
CommandCDW15
特定于命令的 Dword 15 (请参阅 NVMe 规范) 。
CommandType
指定 NVMe 命令类型的 SRBEX_DATA_NVME_COMMAND_TYPE 值。
CommandFlags
一个SRBEX_DATA_NVME_COMMAND_FLAG值,该值指定此 SRBEX 数据 NVMe 命令的属性。
CommandStatus
“完成队列”条目中的“状态”字段 (请参阅 NVMe 规范) 。
CommandStatus.DUMMYSTRUCTNAME
CommandStatus.DUMMYSTRUCTNAME.P
阶段标记 (P) 。
CommandStatus.DUMMYSTRUCTNAME.SC
SC) 状态代码 (。
CommandStatus.DUMMYSTRUCTNAME.SCT
状态代码类型 (SCT) 。
CommandStatus.DUMMYSTRUCTNAME.Reserved
保留。
CommandStatus.DUMMYSTRUCTNAME.M
更多 (M) 。
CommandStatus.DUMMYSTRUCTNAME.DNR
不要重试 (DNR) 。
CommandStatus.AsUshort
QID
用户指定的队列 ID (查看 NVMe 规范) 。 如果未指定,请将此值设置为0xFFFFFFFF。
CommandTag
用于标记特定命令的命令标识符的唯一用户指定标识符。 用户可以使用 CommandTag 跟踪 Windows (ETW 事件跟踪中的命令结果,) 跟踪 (例如,在 事件查看器 的存储日志) 中。
CQEntryDW0
完成队列条目 DW0。
要求
要求 | 值 |
---|---|
最低受支持的服务器 | Windows Server 2022 |
标头 | srb.h |
另请参阅
反馈
https://aka.ms/ContentUserFeedback。
即将发布:在整个 2024 年,我们将逐步淘汰作为内容反馈机制的“GitHub 问题”,并将其取代为新的反馈系统。 有关详细信息,请参阅:提交和查看相关反馈