estrutura NVME_ERROR_INFO_LOG (nvme.h)
Contém campos que especificam as informações em uma página de log de Informações de Erro.
A página de log informações de erro contém informações de erro estendidas para um comando que foi concluído com um erro ou relatou um erro que não é específico de um comando específico. Informações de erro estendidas são fornecidas quando Mais (M) é definido 1
como no campo Status da Entrada de Fila de Conclusão associada ao comando que foi concluído com um erro ou como parte de um evento assíncrono com um tipo de status de erro.
A página de log informações de erro é global para o controlador. Esse log de erros pode retornar os últimos n erros. Se o software host especificar uma transferência de dados do tamanho de n logs de erros, os logs de erro dos últimos n erros serão retornados. A ordenação das entradas baseia-se na hora em que o erro ocorreu, com o erro mais recente sendo retornado como o primeiro log.
A página de log informações de erro é um conjunto de 64 entradas de bytes; o número de entradas com suporte é indicado na estrutura de dados Identificar Controlador .
Essa estrutura é retornada pelo comando Obter Página de Log. Para obter mais informações, consulte NVME_CDW10_GET_LOG_PAGE.
Sintaxe
typedef struct {
ULONGLONG ErrorCount;
USHORT SQID;
USHORT CMDID;
NVME_COMMAND_STATUS Status;
struct {
USHORT Byte : 8;
USHORT Bit : 3;
USHORT Reserved : 5;
} ParameterErrorLocation;
ULONGLONG Lba;
ULONG NameSpace;
UCHAR VendorInfoAvailable;
UCHAR Reserved0[3];
ULONGLONG CommandSpecificInfo;
UCHAR Reserved1[24];
} NVME_ERROR_INFO_LOG, *PNVME_ERROR_INFO_LOG;
Membros
ErrorCount
Uma contagem de erros de incremento de 64 bits que indica um identificador exclusivo para esse erro.
A contagem de erros começa em 1h
, é incrementada para cada entrada de log de erros exclusiva e é mantida entre as condições de desligar. Um valor de 0h
indica uma entrada inválida; esse valor pode ser usado quando há entradas perdidas ou quando há menos erros do que o número máximo de entradas compatíveis com o controlador.
SQID
Indica o SQID (Identificador de Fila de Envio) do comando ao qual as informações de erro estão associadas. Se o erro não for específico para um comando específico, esse campo será definido como FFFFh
.
CMDID
Indica o CMDID (Identificador de Comando) do comando ao qual o erro está associado. Se o erro não for específico para um comando específico, isso será definido como FFFFh
.
Status
Indica o Campo de Status para o comando que foi concluído.
O Campo de Status está localizado em bits 01:15. O bit 0 corresponde à Marca de Fase (P) postada para o comando . Se o erro não for específico a um comando específico, esse campo relatará o valor de status mais aplicável.
ParameterErrorLocation
Uma estrutura ParameterErrorLocation que contém campos que indicam o Byte e o Bit do parâmetro de comando ao qual o erro está associado, se aplicável.
Se o parâmetro abranger vários bytes ou bits, o local indicará o primeiro byte e o bit do parâmetro. Se o erro não for específico para um comando específico, esse campo será definido como FFFFh
.
ParameterErrorLocation.Byte
Indica o Byte no comando que continha o erro.
Esse valor está contido nos bits 0:7 da estrutura ParameterErrorLocation . Os valores válidos são de 0 a 63.
ParameterErrorLocation.Bit
Indica o Bit no comando que continha o erro.
Esse valor está contido nos bits 8:10 da estrutura ParameterErrorLocation . Os valores válidos são de 0 a 7.
ParameterErrorLocation.Reserved
Os bits 11:15 da estrutura ParameterErrorLocation são reservados.
Lba
Indica o primeiro LBA (Endereço de Bloco Lógico) que experimentou a condição de erro, se aplicável.
NameSpace
Indica o namespace ao qual o erro está associado, se aplicável.
VendorInfoAvailable
Quando há informações de erro específicas do fornecedor adicionais disponíveis, esse campo fornece o identificador de página de log associado a essa página.
Um valor de 00h
indica que nenhuma informação adicional está disponível. Os valores válidos estão no intervalo de 80h
para FFh
.
Reserved0[3]
Um campo reservado.
CommandSpecificInfo
Contém informações específicas do comando. Se usada, a definição de comando especifica as informações retornadas.
Reserved1[24]
Um campo reservado.
Requisitos
Requisito | Valor |
---|---|
Cliente mínimo com suporte | Windows 10 |
Cabeçalho | nvme.h |