다음을 통해 공유


NVME_ERROR_INFO_LOG 구조체(nvme.h)

오류 정보 로그 페이지의 정보를 지정하는 필드를 포함합니다.

오류 정보 로그 페이지에는 오류로 완료되거나 특정 명령과 관련이 없는 오류를 보고한 명령에 대한 확장된 오류 정보가 포함되어 있습니다. 확장된 오류 정보는 오류로 완료된 명령과 연결된 완료 큐 항목상태 필드에 자세히(M)를 설정 1 하거나 오류 상태 형식의 비동기 이벤트의 일부로 설정될 때 제공됩니다.

오류 정보 로그 페이지는 컨트롤러에 전역입니다. 이 오류 로그는 마지막 n 오류를 반환할 수 있습니다. 호스트 소프트웨어가 n 오류 로그 크기의 데이터 전송을 지정하는 경우 마지막 n 오류에 대한 오류 로그가 반환됩니다. 항목의 순서는 오류가 발생한 시간을 기준으로 하며 가장 최근의 오류가 첫 번째 로그로 반환됩니다.

오류 정보 로그 페이지는 64개의 바이트 항목 집합입니다. 지원되는 항목의 수는 컨트롤러 식별 데이터 구조에 표시됩니다.

이 구조체는 로그 페이지 가져오기 명령에 의해 반환됩니다. 자세한 내용은 NVME_CDW10_GET_LOG_PAGE 참조하세요.

구문

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;

멤버

ErrorCount

이 오류의 고유 식별자를 나타내는 64비트 증분 오류 수입니다.

오류 수는 에서 1h시작하여 각 고유한 오류 로그 항목에 대해 증가하며 전원 끄기 조건에서 유지됩니다. 값은 0h 잘못된 항목을 나타냅니다. 이 값은 항목이 손실되거나 컨트롤러가 지원하는 최대 항목 수보다 적은 오류가 있을 때 사용할 수 있습니다.

SQID

오류 정보가 연결된 명령의 SQID(제출 큐 식별자)를 나타냅니다. 오류가 특정 명령과 관련이 없는 경우 이 필드는 로 FFFFh설정됩니다.

CMDID

오류가 연결된 명령의 CMDID(명령 식별자)를 나타냅니다. 오류가 특정 명령과 관련이 없는 경우 로 설정 FFFFh됩니다.

Status

완료된 명령의 상태 필드를 나타냅니다.

상태 필드는 비트 01:15에 있습니다. 비트 0은 명령에 대해 게시된 P(단계 태그)에 해당합니다. 오류가 특정 명령과 관련이 없는 경우 이 필드는 가장 적용 가능한 상태 값을 보고합니다.

ParameterErrorLocation

해당하는 경우 오류가 연결된 명령 매개 변수의 Byte 및 Bit를 나타내는 필드를 포함하는 ParameterErrorLocation 구조체입니다.

매개 변수가 여러 바이트 또는 비트에 걸쳐 있는 경우 위치는 매개 변수의 첫 번째 바이트 및 비트를 나타냅니다. 오류가 특정 명령과 관련이 없는 경우 이 필드는 로 FFFFh설정됩니다.

ParameterErrorLocation.Byte

오류가 포함된 명령의 바이트를 나타냅니다.

이 값은 ParameterErrorLocation 구조의 비트 0:7에 포함됩니다. 유효한 값은 0~63입니다.

ParameterErrorLocation.Bit

오류가 포함된 명령의 Bit를 나타냅니다.

이 값은 ParameterErrorLocation 구조의 비트 8:10에 포함됩니다. 유효한 값은 0~7입니다.

ParameterErrorLocation.Reserved

ParameterErrorLocation 구조체의 비트 11:15가 예약되어 있습니다.

Lba

해당하는 경우 오류 조건이 발생한 첫 번째 LBA(논리 블록 주소)를 나타냅니다.

NameSpace

해당하는 경우 오류가 연결된 네임스페이스를 나타냅니다.

VendorInfoAvailable

사용 가능한 추가 공급업체별 오류 정보가 있는 경우 이 필드는 해당 페이지와 연결된 로그 페이지 식별자를 제공합니다.

값은 00h 추가 정보를 사용할 수 없음을 나타냅니다. 유효한 값은 의 범위에 80hFFh있습니다.

Reserved0[3]

예약된 필드입니다.

CommandSpecificInfo

명령 관련 정보를 포함합니다. 사용되는 경우 명령 정의는 반환된 정보를 지정합니다.

Reserved1[24]

예약된 필드입니다.

요구 사항

요구 사항
지원되는 최소 클라이언트 Windows 10
머리글 nvme.h