struct nvme_error_log_page - Error Information Log Entry (Log
Identifier 01h)
struct nvme_error_log_page {
__le64 error_count;
__le16 sqid;
__le16 cmdid;
__le16 status_field;
__le16 parm_error_location;
__le64 lba;
__le32 nsid;
__u8 vs;
__u8 trtype;
__u8 rsvd[2];
__le64 cs;
__le16 trtype_spec_info;
__u8 rsvd2[22];
};
- error_count
- Error Count: a 64-bit incrementing error count, indicating a unique
identifier for this error. The error count starts at 1h, is incremented
for each unique error log entry, and is retained across power off
conditions. A value of 0h indicates an invalid entry; this value is used
when there are lost entries or when there are fewer errors than the
maximum number of entries the controller supports. If the value of this
field is FFFFFFFFh, then the field shall be set to 1h when incremented
(i.e., rolls over to 1h). Prior to NVMe 1.4, processing of incrementing
beyond FFFFFFFFh is unspecified.
- sqid
- Submission Queue ID: indicates the Submission Queue Identifier of the
command that the error information is associated with. If the error is not
specific to a particular command, then this field shall be set to
FFFFh.
- cmdid
- Command ID: indicates the Command Identifier of the command that the error
is associated with. If the error is not specific to a particular command,
then this field shall be set to FFFFh.
- status_field
- Bits 15-1: Status Field: indicates the Status Field for the command that
completed. If the error is not specific to a particular command, then this
field reports the most applicable status value. Bit 0: Phase Tag: may
indicate the Phase Tag posted for the command.
- parm_error_location
- Parameter Error Location: indicates the byte and bit of the command
parameter that the error is associated with, if applicable. If the
parameter spans multiple bytes or bits, then the location indicates the
first byte and bit of the parameter. Bits 10-8: Bit in command that
contained the error. Valid values are 0 to 7. Bits 7-0: Byte in command
that contained the error. Valid values are 0 to 63.
- lba
- LBA: This field indicates the first LBA that experienced the error
condition, if applicable.
- nsid
- Namespace: This field indicates the NSID of the namespace that the error
is associated with, if applicable.
- vs
- Vendor Specific Information Available: If there is additional vendor
specific error information available, this field provides the log page
identifier associated with that page. A value of 0h indicates that no
additional information is available. Valid values are in the range of 80h
to FFh.
- trtype
- Transport Type (TRTYPE): indicates the Transport Type of the transport
associated with the error. The values in this field are the same as the
TRTYPE values in the Discovery Log Page Entry. If the error is not
transport related, this field shall be cleared to 0h. If the error is
transport related, this field shall be set to the type of the transport -
see enum nvme_trtype.
- rsvd
- Reserved
- cs
- Command Specific Information: This field contains command specific
information. If used, the command definition specifies the information
returned.
- trtype_spec_info
- Transport Type Specific Information
- rsvd2
- Reserved