Freigeben über


NVME_DEVICE_SELF_TEST_RESULT_DATA Struktur (nvme.h)

Enthält Daten zu den Ergebnissen eines Geräte-Self-Test-Vorgangs.

Diese Struktur wird im ResultData-Feld der NVME_DEVICE_SELF_TEST_LOG-Struktur verwendet.

Syntax

typedef struct {
  struct {
    UCHAR Result : 4;
    UCHAR CodeValue : 4;
  } Status;
  UCHAR     SegmentNumber;
  struct {
    UCHAR NSIDValid : 1;
    UCHAR FLBAValid : 1;
    UCHAR SCTValid : 1;
    UCHAR SCValid : 1;
    UCHAR Reserved : 4;
  } ValidDiagnostics;
  UCHAR     Reserved;
  ULONGLONG POH;
  ULONG     NSID;
  ULONGLONG FailingLBA;
  struct {
    UCHAR AdditionalInfo : 3;
    UCHAR Reserved : 5;
  } StatusCodeType;
  UCHAR     StatusCode;
  USHORT    VendorSpecific;
} NVME_DEVICE_SELF_TEST_RESULT_DATA, *PNVME_DEVICE_SELF_TEST_RESULT_DATA;

Elemente

Status

Eine Statusstruktur mit Feldern, die den Status eines Geräte-Self-Test-Vorgangs beschreiben.

Status.Result

Gibt das Ergebnis des Geräte-Self-Test-Vorgangs an.

Status.CodeValue

Gibt den Self-Test Codewert an, der im Befehl angegeben wurde.

SegmentNumber

Gibt das erste Segment an, in dem während des Geräte-Self-Test-Vorgangs ein Fehler aufgetreten ist.

ValidDiagnostics

Eine ValidDiagnostics-Struktur mit Feldern, die die Gültigkeit bestimmter Parameter in einem Device Self-Test-Vorgang angeben.

ValidDiagnostics.NSIDValid

Ein ValidDiagnostics-Feld , das angibt, ob der Inhalt des Namespace Identifier (NSID)-Felds gültig ist.

Wenn dieser Wert auf 1" NSID " festgelegt ist, sind die Inhalte des NSID-Felds gültig.

ValidDiagnostics.FLBAValid

Ein ValidDiagnostics-Feld , das angibt, ob der Inhalt des Felds "Fail Logical Block Address (FLBA)" gültig ist.

Wenn dieser Wert auf 1 festgelegt ist, sind die Inhalte des FLBA-Felds gültig.

ValidDiagnostics.SCTValid

Ein ValidDiagnostics-Feld , das angibt, ob der Inhalt des Felds Statuscodetyp (StatusCodeType) gültig ist.

Wenn dieser Wert auf 1 festgelegt ist, ist der Inhalt des Felds StatusCodeType gültig.

ValidDiagnostics.SCValid

Ein ValidDiagnostics-Feld , das angibt, ob der Inhalt des Felds Statuscode (StatusCode) gültig ist.

Wenn dieser Wert auf 1 festgelegt ist, ist der Inhalt des Felds StatusCode gültig.

ValidDiagnostics.Reserved

Ein reserviertes Feld in der ValidDiagnostics-Struktur .

Reserved

Ein reserviertes Feld.

POH

Gibt die Anzahl der Power On Hours (POH) an, wenn der Testvorgang abgeschlossen oder abgebrochen wurde.

NSID

Enthält den Namespacebezeichner (NSID). Dieses Feld ist nur gültig, wenn NSIDValid auf 1.

FailingLBA

Die logische Blockadresse (Logical Block Address, LBA), die dazu führte, dass der Test fehlschlug. Dieses Feld ist nur gültig, wenn FLBAValid auf 1.

StatusCodeType

Eine Statuscodetypstruktur (StatusCodeType), die Felder enthält, die Informationen zu Fehlern und Bedingungen enthalten.

StatusCodeType.AdditionalInfo

Ein StatusCodeType-Feld , das zusätzliche Informationen zu Fehlern und Bedingungen des Vorgangs "Device Self-Test" basierend auf dem Statuscodetyp enthält.

Dieses Feld ist nur gültig, wenn SCTValid auf 1.

StatusCodeType.Reserved

Ein reserviertes Feld in der StatusCodeType-Struktur .

StatusCode

Ein StatusCodeType-Feld , das zusätzliche Informationen zu Fehlern und Bedingungen des Vorgangs device Self-Test basierend auf dem Statuscode enthält.

Dieses Feld ist nur gültig, wenn SCValid auf 1.

VendorSpecific

Ein anbieterspezifisches Feld.

Anforderungen

Anforderung Wert
Mindestens unterstützter Client Windows 10
Header nvme.h