次の方法で共有


NVME_CDW11_CREATE_IO_SQ union (nvme.h)

IO 送信キューの作成コマンドのパラメーターが含まれています。これは、IO 送信キューの作成に使用されます。

NVME_CDW11_CREATE_IO_SQ構造体は、Command 構造体の CREATEIOSQ パラメーターの CDW11 フィールドで使用されます。

構文

typedef union {
  struct {
    ULONG PC : 1;
    ULONG QPRIO : 2;
    ULONG Reserved0 : 13;
    ULONG CQID : 16;
  } DUMMYSTRUCTNAME;
  ULONG  AsUlong;
} NVME_CDW11_CREATE_IO_SQ, *PNVME_CDW11_CREATE_IO_SQ;

メンバー

DUMMYSTRUCTNAME

DUMMYSTRUCTNAME.PC

[物理連続 (PC)] フィールドは、送信キューがメモリ内で物理的に連続しているかどうかを示します。

この値が に1設定されている場合、送信キューは物理的に連続しており、PRP エントリ 1 (コマンド データ構造PRP1) は連続した物理バッファーのアドレスです。 値が に 0設定されている場合、送信キューは物理的に連続せず、 PRP1 は PRP リスト ポインターです。

この値が に0クリアされ、[コントローラー機能] で [連続したキューが必要] (CQR) フィールドが に1設定されている場合、コントローラーは NVME_STATUS_INVALID_FIELD_IN_COMMAND の状態を返す必要があります。

キューがコントローラー メモリ バッファーにあり、 PC が に 0クリアされている場合、コントローラーはコマンドに失敗し、状態 は NVME_STATUS_INVALID_USE_OF_CONTROLLER_MEMORY_BUFFER

DUMMYSTRUCTNAME.QPRIO

Queue Priority (QPRIO) フィールドは、 NVME_NVM_QUEUE_PRIORITIES 列挙値を指定することによって、この送信キュー内のコマンドに使用する優先度クラスを示します。

このフィールドは、緊急優先度クラスを持つ重み付けラウンド ロビンが選択された仲裁メカニズムである場合にのみ使用されます。緊急優先度クラスを持つ重み付けラウンド ロビンが使用されていない場合、フィールドは無視されます。

DUMMYSTRUCTNAME.Reserved0

DUMMYSTRUCTNAME.CQID

キュー識別子 (QID) フィールドは、この送信キューに関連付けられているコマンド入力候補エントリに使用する完了キューの識別子を示します。

(管理完了キュー) の0h値を指定しないでください。

指定された値が または 0h が有効な I/O 完了キューに対応していない場合、コントローラーは NVME_STATUS_INVALID_QUEUE_IDENTIFIER のエラーを返す必要があります。

AsUlong

要件

要件
サポートされている最小のクライアント Windows 10
Header nvme.h

こちらもご覧ください