次の方法で共有


NVME_COMMAND_STATUS union (nvme.h)

コマンドの状態に関する情報が含まれます。

この構造体は、完了したコマンドの状態を示すために、NVME_COMPLETION_ENTRYの [状態] フィールドとNVME_ERROR_INFO_LOG[状態] フィールドで使用されます。

構文

typedef union {
  struct {
    USHORT P : 1;
    USHORT SC : 8;
    USHORT SCT : 3;
    USHORT Reserved : 2;
    USHORT M : 1;
    USHORT DNR : 1;
  } DUMMYSTRUCTNAME;
  USHORT AsUshort;
} NVME_COMMAND_STATUS, *PNVME_COMMAND_STATUS;

メンバー

DUMMYSTRUCTNAME

DUMMYSTRUCTNAME.P

完了キュー エントリが新しいエントリかどうかを示します。

NVME_CONTROLLER_CONFIGURATIONの EN フィールドを に設定する前に、すべての完了キュー エントリのフェーズ タグ (P) 値をホスト ソフトウェアによって '0' に初期化する1必要があります。

コントローラーは、入力キューにエントリを配置すると、フェーズ タグを反転して、ホスト ソフトウェアが新しいエントリを識別できるようにします。 具体的には、 EN が に設定された後の完了キュー エントリの最初のセットに対して 1、すべてのフェーズ タグはポスト時に に 1 設定されます。 完了キュー エントリの 2 番目のセットでは、コントローラーが完了キューの上部にラップされると、すべてのフェーズ タグはポスト時に に 0 クリアされます。 フェーズ タグの値は、完了キューを通過するたびに反転されます。

DUMMYSTRUCTNAME.SC

コマンドのエラーまたは状態情報を識別する状態コードを示します。

DUMMYSTRUCTNAME.SCT

コントローラー 返す状態の種類を示すNVME_STATUS_TYPES値。

DUMMYSTRUCTNAME.Reserved

DUMMYSTRUCTNAME.M

コマンドの追加の状態情報があるかどうかを示します。

この値が に 1設定されている場合、ログ ページの取得コマンドを使用して取得できる エラー情報ログ の一部として、このコマンドの状態情報がさらに表示されます。

この値を に 0クリアすると、このコマンドの追加の状態情報はありません。

DUMMYSTRUCTNAME.DNR

コマンドが再送信された場合に成功するかどうかを示します。

この値を に 1設定すると、同じコマンドが再送信された場合に失敗することが予想されることを示します。

この値を に 0クリアすると、再試行された場合に同じコマンドが成功する可能性があることを示します。

時間制限付きエラー回復のためにコマンドが中止された場合、このフィールドは に 0クリアする必要があります。 SCT フィールドと SC フィールドが に0hクリアされている場合は、このフィールドを にクリアする0必要があります。

AsUshort

要件

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

こちらもご覧ください