NVME_CDW10_CREATE_IO_QUEUE union (nvme.h)
I/O 完了キューの作成コマンドおよび IO 送信キューの作成コマンドで使用されるパラメーターが含まれています。 I/O 入力候補キューの作成コマンドは、管理完了キューを除くすべての I/O 完了キューを作成するために使用され、I/O 送信キューの作成コマンドを使用して I/O 送信キューを作成します。
NVME_CDW10_CREATE_IO_QUEUE構造体は、コマンド構造の CREATEIOCQ パラメーターと CREATEIOSQ パラメーターの CDW10 フィールドで使用されます。
構文
typedef union {
struct {
ULONG QID : 16;
ULONG QSIZE : 16;
} DUMMYSTRUCTNAME;
ULONG AsUlong;
} NVME_CDW10_CREATE_IO_QUEUE, *PNVME_CDW10_CREATE_IO_QUEUE;
メンバー
DUMMYSTRUCTNAME
DUMMYSTRUCTNAME.QID
キュー識別子 (QID) フィールドは、作成する完了キューまたは送信キューに割り当てる識別子を示します。
この識別子は、Completion Queue コマンドに使用される Completion Queue Head Doorbell または Submission Queue コマンドに使用される 送信キュー Tail Doorbell のいずれかに対応します。
この 16 ビット ID 値は、I/O 入力候補キューまたは I/O 送信キューの NVME_FEATURE_NUMBER_OF_QUEUES 機能で報告された値を超えないようにする必要があります。 指定された値が である場合、 0h
報告されたキューの数を超えているか、既に使用されている識別子に対応している場合、コントローラーは NVME_STATUS_INVALID_QUEUE_IDENTIFIER のエラーを返す必要があります。
DUMMYSTRUCTNAME.QSIZE
キュー サイズ (QSIZE) フィールドは、作成する完了キューまたは送信キューのサイズを示します。 キュー サイズは、キュー内のエントリの数を指定する 16 ビット 0 ベースのフィールドに示されます。
キューの最小サイズは 2 つのエントリです。 I/O 送信キューまたは I/O 完了キューの最大サイズは 64K エントリです。これは、NVME_CONTROLLER_CAPABILITIES構造体の「サポートされる最大キュー・エントリー(MQES)」フィールドで報告されるコントローラーでサポートされる最大キュー・サイズによって制限されます。
管理送信キューと管理完了キューの最大サイズは、4K エントリとして定義されます。 各キュー内の 1 つのエントリは、Head および Tail エントリ ポインター定義のために使用できません。
サイズがコントローラーでサポートされている 0h
サイズ以上の場合、コントローラーは 無効なキュー サイズのエラーを返す必要があります。
AsUlong
要件
要件 | 値 |
---|---|
サポートされている最小のクライアント | Windows 10 |
Header | nvme.h |