NVME_CDW11_CREATE_IO_CQ union (nvme.h)

包含“创建 I/O 完成队列”命令的参数,该命令用于创建除管理员完成队列之外的所有 I/O 完成队列。

NVME_CDW11_CREATE_IO_CQ结构在 Command 结构的 CREATEIOCQ 参数的 CDW11 字段中使用。

语法

typedef union {
  struct {
    ULONG PC : 1;
    ULONG IEN : 1;
    ULONG Reserved0 : 14;
    ULONG IV : 16;
  } DUMMYSTRUCTNAME;
  ULONG  AsUlong;
} NVME_CDW11_CREATE_IO_CQ, *PNVME_CDW11_CREATE_IO_CQ;

成员

DUMMYSTRUCTNAME

DUMMYSTRUCTNAME.PC

“物理连续 (电脑) 字段指示”完成队列“在内存中是否在物理上是连续的。

如果此值设置为 1,则完成队列在物理上是连续的,而 PRP 条目 1 (命令数据结构中的 PRP1) 是连续物理缓冲区的地址。 如果将该值清除为 0,则完成队列在物理上不连续, PRP1 是 PRP 列表指针。

如果队列位于控制器内存缓冲区中,并且 电脑 被清除为 0,则控制器将使命令失败,状态为 NVME_STATUS_INVALID_USE_OF_CONTROLLER_MEMORY_BUFFER

DUMMYSTRUCTNAME.IEN

“已启用中断 (IEN) 字段指示是否为此完成队列启用中断。

当值设置为 1时,会为此完成队列启用中断。 将值清除为 0时,将为此完成队列禁用中断。

DUMMYSTRUCTNAME.Reserved0

DUMMYSTRUCTNAME.IV

中断向量 (IV) 字段指示要用于此完成队列的中断向量。

此值对应于 MSI-X) 向量 (消息信号中断,或者,如果使用单个消息 MSI 或基于引脚的中断,则该值设置为 0h。 在 MSI-X 中,最多使用 2K 个向量。

此值不应设置为大于控制器支持的消息数的值。 如果是,则控制器将返回 NVME_STATUS_INVALID_INTERRUPT_VECTOR状态。

AsUlong

要求

要求
最低受支持的客户端 Windows 10
标头 nvme.h

另请参阅