estrutura SRBEX_DATA_NVME_COMMAND (srb.h)

A estrutura SRBEX_DATA_NVME_COMMAND permite que o usuário enquadrou e emita um comando no formato NVMe. No momento, essa estrutura está reservada para uso do sistema.

Sintaxe

typedef struct _SRBEX_DATA_NVME_COMMAND {
  SRBEXDATATYPE Type;
  ULONG         Length;
  ULONG         CommandDWORD0;
  ULONG         CommandNSID;
  ULONG         Reserved0[2];
  ULONGLONG     CommandMPTR;
  ULONGLONG     CommandPRP1;
  ULONGLONG     CommandPRP2;
  ULONG         CommandCDW10;
  ULONG         CommandCDW11;
  ULONG         CommandCDW12;
  ULONG         CommandCDW13;
  ULONG         CommandCDW14;
  ULONG         CommandCDW15;
  UCHAR         CommandType;
  UCHAR         CommandFlags;
  union {
    struct {
      USHORT P : 1;
      USHORT SC : 8;
      USHORT SCT : 3;
      USHORT Reserved : 2;
      USHORT M : 1;
      USHORT DNR : 1;
    } DUMMYSTRUCTNAME;
    USHORT AsUshort;
  } CommandStatus;
  ULONG         QID;
  ULONG         CommandTag;
  ULONG         CQEntryDW0;
} SRBEX_DATA_NVME_COMMAND, *PSRBEX_DATA_NVME_COMMAND;

Membros

Type

Tipo de comando. Atualmente, isso deve ser definido como SrbExDataTypeNvmeCommand.

Length

Tamanho dessa estrutura, em bytes.

CommandDWORD0

Comando Dword 0 no comando NVMe (consulte a especificação NVMe).

CommandNSID

Identificador de namespace no comando NVMe (consulte a especificação NVMe).

Reserved0[2]

Reservado; não use.

CommandMPTR

Ponteiro de metadados dentro do comando NVMe (consulte a especificação NVMe).

CommandPRP1

Página de região física (PRP) Entrada 1 no comando NVMe (consulte a especificação NVMe). Para indicar que as informações de PRP estão presentes, o usuário deve definir o sinalizador SRBEX_DATA_NVME_COMMAND_FLAG_PRP_SET_ALREADY de SRBEX_DATA_NVME_COMMAND_FLAG.

CommandPRP2

Entrada PRP 2 no comando NVMe (consulte a especificação NVMe). Para indicar que as informações de PRP estão presentes, o usuário deve definir o sinalizador SRBEX_DATA_NVME_COMMAND_FLAG_PRP_SET_ALREADY de SRBEX_DATA_NVME_COMMAND_FLAG.

CommandCDW10

Dword 10 específico do comando (consulte a especificação NVMe).

CommandCDW11

Dword 11 específico do comando (consulte a especificação NVMe).

CommandCDW12

Dword 12 específico do comando (consulte a especificação NVMe).

CommandCDW13

Dword 13 específico do comando (consulte a especificação NVMe).

CommandCDW14

Dword 14 específico do comando (consulte a especificação NVMe).

CommandCDW15

Dword 15 específico do comando (consulte a especificação NVMe).

CommandType

Um valor SRBEX_DATA_NVME_COMMAND_TYPE que especifica o tipo de comando NVMe.

CommandFlags

Um valor SRBEX_DATA_NVME_COMMAND_FLAG que especifica as propriedades desse comando NVMe de dados SRBEX.

CommandStatus

Campo Status da entrada Fila de Conclusão (consulte a especificação NVMe).

CommandStatus.DUMMYSTRUCTNAME

CommandStatus.DUMMYSTRUCTNAME.P

Marca de fase (P).

CommandStatus.DUMMYSTRUCTNAME.SC

Código de status (SC).

CommandStatus.DUMMYSTRUCTNAME.SCT

Tipo de código de status (SCT).

CommandStatus.DUMMYSTRUCTNAME.Reserved

Reservado.

CommandStatus.DUMMYSTRUCTNAME.M

Mais (M).

CommandStatus.DUMMYSTRUCTNAME.DNR

Não tente novamente (DNR).

CommandStatus.AsUshort

QID

ID da fila especificada pelo usuário (consulte a especificação NVMe). Se não for especificado, defina esse valor como 0xFFFFFFFF.

CommandTag

Identificador exclusivo especificado pelo usuário para o identificador de comando marcar um comando específico. Um usuário pode usar CommandTag para rastrear o resultado do comando em um rastreamento ETW (Rastreamento de Eventos para Windows) (por exemplo, no log de Armazenamento do Visualizador de Eventos).

CQEntryDW0

Entrada da fila de conclusão DW0.

Requisitos

Requisito Valor
Servidor mínimo com suporte Windows Server 2022
Cabeçalho srb.h

Confira também

SRBEX_DATA_NVME_COMMAND_FLAG

SRBEX_DATA_NVME_COMMAND_FLAG