NVME_ERROR_INFO_LOG struttura (nvme.h)
Contiene campi che specificano le informazioni in una pagina del log delle informazioni sugli errori.
La pagina Log informazioni errore contiene informazioni di errore estese per un comando completato con un errore o segnalato un errore non specifico per un comando specifico. Le informazioni sugli errori estesi vengono fornite quando Più (M) è impostato su 1
nel campo Stato per la voce della coda di completamento associata al comando che è stato completato con un errore o come parte di un evento asincrono con un tipo di stato errore.
La pagina Log informazioni sugli errori è globale per il controller. Questo log degli errori può restituire gli ultimi n errori. Se il software host specifica un trasferimento dei dati delle dimensioni dei log degli errori n , vengono restituiti i log degli errori per gli ultimi n errori. L'ordinamento delle voci si basa sul momento in cui si è verificato l'errore, con l'errore più recente restituito come primo log.
La pagina Log informazioni errori è un set di voci di byte 64; il numero di voci supportate è indicato nella struttura dei dati Di identificazione del titolare del trattamento .
Questa struttura viene restituita dal comando Get Log Page. Per altre informazioni, vedere NVME_CDW10_GET_LOG_PAGE.
Sintassi
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;
Members
ErrorCount
Numero di errori a 64 bit, che indica un identificatore univoco per questo errore.
Il conteggio degli errori inizia a 1h
, viene incrementato per ogni voce univoca del log degli errori e viene mantenuta in condizioni di disattivazione. Un valore di 0h
indica una voce non valida. Questo valore può essere usato quando sono presenti voci perse o quando sono presenti meno errori rispetto al numero massimo di voci supportate dal controller.
SQID
Indica l'identificatore della coda di invio (SQID) del comando a cui sono associate le informazioni sull'errore. Se l'errore non è specifico di un comando specifico, questo campo è impostato su FFFFh
.
CMDID
Indica l'identificatore del comando (CMDID) del comando a cui è associato l'errore. Se l'errore non è specifico di un comando specifico, questo è impostato su FFFFh
.
Status
Indica il campo stato per il comando completato.
Il campo Stato si trova in bit 01:15. Bit 0 corrisponde al tag di fase (P) pubblicato per il comando. Se l'errore non è specifico di un comando specifico, questo campo segnala il valore di stato più applicabile.
ParameterErrorLocation
Struttura ParameterErrorLocation contenente campi che indicano il byte e bit del parametro di comando associato all'errore, se applicabile.
Se il parametro si estende su più byte o bit, la posizione indica il primo byte e il bit del parametro. Se l'errore non è specifico di un comando specifico, questo campo è impostato su FFFFh
.
ParameterErrorLocation.Byte
Indica il Byte nel comando che contiene l'errore.
Questo valore è contenuto in bit 0:7 della struttura ParameterErrorLocation . I valori validi sono da 0 a 63.
ParameterErrorLocation.Bit
Indica bit nel comando che contiene l'errore.
Questo valore è contenuto in bit 8:10 della struttura ParameterErrorLocation . I valori validi sono da 0 a 7.
ParameterErrorLocation.Reserved
I bit 11:15 della struttura ParameterErrorLocation sono riservati.
Lba
Indica il primo indirizzo a blocchi logici (LBA) che ha riscontrato la condizione di errore, se applicabile.
NameSpace
Indica lo spazio dei nomi associato all'errore, se applicabile.
VendorInfoAvailable
Quando sono disponibili informazioni di errore specifiche del fornitore aggiuntive, questo campo fornisce l'identificatore della pagina di log associato a tale pagina.
Valore di 00h
indica che non sono disponibili informazioni aggiuntive. I valori validi si trovano nell'intervallo di 80h
a FFh
.
Reserved0[3]
Campo riservato.
CommandSpecificInfo
Contiene informazioni specifiche del comando. Se usata, la definizione del comando specifica le informazioni restituite.
Reserved1[24]
Campo riservato.
Requisiti
Requisito | Valore |
---|---|
Client minimo supportato | Windows 10 |
Intestazione | nvme.h |