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;
Members
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
Requirements
| Requirement | 価値 |
|---|---|
| サポートされる最小クライアント | Windows 10 |
| Header | nvme.h |