enum nvme_status_field - Defines all parts of the nvme status field: status
code, status code type, and additional flags.
enum nvme_status_field {
NVME_SCT_GENERIC ,
NVME_SCT_CMD_SPECIFIC ,
NVME_SCT_MEDIA ,
NVME_SCT_PATH ,
NVME_SCT_VS ,
NVME_SCT_MASK ,
NVME_SCT_SHIFT ,
NVME_SC_MASK ,
NVME_SC_SHIFT ,
NVME_SC_SUCCESS ,
NVME_SC_INVALID_OPCODE ,
NVME_SC_INVALID_FIELD ,
NVME_SC_CMDID_CONFLICT ,
NVME_SC_DATA_XFER_ERROR ,
NVME_SC_POWER_LOSS ,
NVME_SC_INTERNAL ,
NVME_SC_ABORT_REQ ,
NVME_SC_ABORT_QUEUE ,
NVME_SC_FUSED_FAIL ,
NVME_SC_FUSED_MISSING ,
NVME_SC_INVALID_NS ,
NVME_SC_CMD_SEQ_ERROR ,
NVME_SC_SGL_INVALID_LAST ,
NVME_SC_SGL_INVALID_COUNT ,
NVME_SC_SGL_INVALID_DATA ,
NVME_SC_SGL_INVALID_METADATA ,
NVME_SC_SGL_INVALID_TYPE ,
NVME_SC_CMB_INVALID_USE ,
NVME_SC_PRP_INVALID_OFFSET ,
NVME_SC_AWU_EXCEEDED ,
NVME_SC_OP_DENIED ,
NVME_SC_SGL_INVALID_OFFSET ,
NVME_SC_HOSTID_FORMAT ,
NVME_SC_KAT_EXPIRED ,
NVME_SC_KAT_INVALID ,
NVME_SC_CMD_ABORTED_PREMEPT ,
NVME_SC_SANITIZE_FAILED ,
NVME_SC_SANITIZE_IN_PROGRESS ,
NVME_SC_SGL_INVALID_GRANULARITY ,
NVME_SC_CMD_IN_CMBQ_NOT_SUPP ,
NVME_SC_NS_WRITE_PROTECTED ,
NVME_SC_CMD_INTERRUPTED ,
NVME_SC_TRAN_TPORT_ERROR ,
NVME_SC_PROHIBITED_BY_CMD_AND_FEAT ,
NVME_SC_ADMIN_CMD_MEDIA_NOT_READY ,
NVME_SC_LBA_RANGE ,
NVME_SC_CAP_EXCEEDED ,
NVME_SC_NS_NOT_READY ,
NVME_SC_RESERVATION_CONFLICT ,
NVME_SC_FORMAT_IN_PROGRESS ,
NVME_SC_CQ_INVALID ,
NVME_SC_QID_INVALID ,
NVME_SC_QUEUE_SIZE ,
NVME_SC_ABORT_LIMIT ,
NVME_SC_ABORT_MISSING ,
NVME_SC_ASYNC_LIMIT ,
NVME_SC_FIRMWARE_SLOT ,
NVME_SC_FIRMWARE_IMAGE ,
NVME_SC_INVALID_VECTOR ,
NVME_SC_INVALID_LOG_PAGE ,
NVME_SC_INVALID_FORMAT ,
NVME_SC_FW_NEEDS_CONV_RESET ,
NVME_SC_INVALID_QUEUE ,
NVME_SC_FEATURE_NOT_SAVEABLE ,
NVME_SC_FEATURE_NOT_CHANGEABLE ,
NVME_SC_FEATURE_NOT_PER_NS ,
NVME_SC_FW_NEEDS_SUBSYS_RESET ,
NVME_SC_FW_NEEDS_RESET ,
NVME_SC_FW_NEEDS_MAX_TIME ,
NVME_SC_FW_ACTIVATE_PROHIBITED ,
NVME_SC_OVERLAPPING_RANGE ,
NVME_SC_NS_INSUFFICIENT_CAP ,
NVME_SC_NS_ID_UNAVAILABLE ,
NVME_SC_NS_ALREADY_ATTACHED ,
NVME_SC_NS_IS_PRIVATE ,
NVME_SC_NS_NOT_ATTACHED ,
NVME_SC_THIN_PROV_NOT_SUPP ,
NVME_SC_CTRL_LIST_INVALID ,
NVME_SC_SELF_TEST_IN_PROGRESS ,
NVME_SC_BP_WRITE_PROHIBITED ,
NVME_SC_INVALID_CTRL_ID ,
NVME_SC_INVALID_SEC_CTRL_STATE ,
NVME_SC_INVALID_CTRL_RESOURCES ,
NVME_SC_INVALID_RESOURCE_ID ,
NVME_SC_PMR_SAN_PROHIBITED ,
NVME_SC_ANA_GROUP_ID_INVALID ,
NVME_SC_ANA_ATTACH_FAILED ,
NVME_SC_INSUFFICIENT_CAP ,
NVME_SC_NS_ATTACHMENT_LIMIT_EXCEEDED ,
NVME_SC_PROHIBIT_CMD_EXEC_NOT_SUPPORTED ,
NVME_SC_IOCS_NOT_SUPPORTED ,
NVME_SC_IOCS_NOT_ENABLED ,
NVME_SC_IOCS_COMBINATION_REJECTED ,
NVME_SC_INVALID_IOCS ,
NVME_SC_ID_UNAVAILABLE ,
NVME_SC_INVALID_DISCOVERY_INFO ,
NVME_SC_ZONING_DATA_STRUCT_LOCKED ,
NVME_SC_ZONING_DATA_STRUCT_NOTFND ,
NVME_SC_INSUFFICIENT_DISC_RES ,
NVME_SC_REQSTD_FUNCTION_DISABLED ,
NVME_SC_ZONEGRP_ORIGINATOR_INVLD ,
NVME_SC_BAD_ATTRIBUTES ,
NVME_SC_INVALID_PI ,
NVME_SC_READ_ONLY ,
NVME_SC_CMD_SIZE_LIMIT_EXCEEDED ,
NVME_SC_CONNECT_FORMAT ,
NVME_SC_CONNECT_CTRL_BUSY ,
NVME_SC_CONNECT_INVALID_PARAM ,
NVME_SC_CONNECT_RESTART_DISC ,
NVME_SC_CONNECT_INVALID_HOST ,
NVME_SC_DISCONNECT_INVALID_QTYPE ,
NVME_SC_DISCOVERY_RESTART ,
NVME_SC_AUTH_REQUIRED ,
NVME_SC_ZNS_INVALID_OP_REQUEST ,
NVME_SC_ZNS_ZRWA_RESOURCES_UNAVAILABLE ,
NVME_SC_ZNS_BOUNDARY_ERROR ,
NVME_SC_ZNS_FULL ,
NVME_SC_ZNS_READ_ONLY ,
NVME_SC_ZNS_OFFLINE ,
NVME_SC_ZNS_INVALID_WRITE ,
NVME_SC_ZNS_TOO_MANY_ACTIVE ,
NVME_SC_ZNS_TOO_MANY_OPENS ,
NVME_SC_ZNS_INVAL_TRANSITION ,
NVME_SC_WRITE_FAULT ,
NVME_SC_READ_ERROR ,
NVME_SC_GUARD_CHECK ,
NVME_SC_APPTAG_CHECK ,
NVME_SC_REFTAG_CHECK ,
NVME_SC_COMPARE_FAILED ,
NVME_SC_ACCESS_DENIED ,
NVME_SC_UNWRITTEN_BLOCK ,
NVME_SC_STORAGE_TAG_CHECK ,
NVME_SC_ANA_INTERNAL_PATH_ERROR ,
NVME_SC_ANA_PERSISTENT_LOSS ,
NVME_SC_ANA_INACCESSIBLE ,
NVME_SC_ANA_TRANSITION ,
NVME_SC_CTRL_PATH_ERROR ,
NVME_SC_HOST_PATH_ERROR ,
NVME_SC_CMD_ABORTED_BY_HOST ,
NVME_SC_CRD ,
NVME_SC_MORE ,
NVME_SC_DNR
};
- NVME_SCT_GENERIC
- Generic errors applicable to multiple opcodes
- NVME_SCT_CMD_SPECIFIC
- Errors associated to a specific opcode
- NVME_SCT_MEDIA
- Errors associated with media and data integrity
- NVME_SCT_PATH
- Errors associated with the paths connection
- NVME_SCT_VS
- Vendor specific errors
- NVME_SCT_MASK
- Mask to get the value of the Status Code Type
- NVME_SCT_SHIFT
- Shift value to get the value of the Status Code Type
- NVME_SC_MASK
- Mask to get the value of the status code.
- NVME_SC_SHIFT
- Shift value to get the value of the status code.
- NVME_SC_SUCCESS
- Successful Completion: The command completed without
error.
- NVME_SC_INVALID_OPCODE
- Invalid Command Opcode: A reserved coded value or an
unsupported value in the command opcode field.
- NVME_SC_INVALID_FIELD
- Invalid Field in Command: A reserved coded value or an
unsupported value in a defined field.
- NVME_SC_CMDID_CONFLICT
- Command ID Conflict: The command identifier is already in
use.
- NVME_SC_DATA_XFER_ERROR
- Data Transfer Error: Transferring the data or metadata
associated with a command experienced an error.
- NVME_SC_POWER_LOSS
- Commands Aborted due to Power Loss Notification: Indicates
that the command was aborted due to a power loss notification.
- NVME_SC_INTERNAL
- Internal Error: The command was not completed successfully
due to an internal error.
- NVME_SC_ABORT_REQ
- Command Abort Requested: The command was aborted due to an
Abort command being received that specified the Submission Queue
Identifier and Command Identifier of this command.
- NVME_SC_ABORT_QUEUE
- Command Aborted due to SQ Deletion: The command was aborted
due to a Delete I/O Submission Queue request received for the Submission
Queue to which the command was submitted.
- NVME_SC_FUSED_FAIL
- Command Aborted due to Failed Fused Command: The command
was aborted due to the other command in a fused operation failing.
- NVME_SC_FUSED_MISSING
- Aborted due to Missing Fused Command: The fused command was
aborted due to the adjacent submission queue entry not containing a fused
command that is the other command.
- NVME_SC_INVALID_NS
- Invalid Namespace or Format: The namespace or the format of
that namespace is invalid.
- NVME_SC_CMD_SEQ_ERROR
- Command Sequence Error: The command was aborted due to a
protocol violation in a multi-command sequence.
- NVME_SC_SGL_INVALID_LAST
- Invalid SGL Segment Descriptor: The command includes an
invalid SGL Last Segment or SGL Segment descriptor.
- NVME_SC_SGL_INVALID_COUNT
- Invalid Number of SGL Descriptors: There is an SGL Last
Segment descriptor or an SGL Segment descriptor in a location other than
the last descriptor of a segment based on the length indicated.
- NVME_SC_SGL_INVALID_DATA
- Data SGL Length Invalid: This may occur if the length of a
Data SGL is too short. This may occur if the length of a Data SGL is too
long and the controller does not support SGL transfers longer than the
amount of data to be transferred as indicated in the SGL Support field of
the Identify Controller data structure.
- NVME_SC_SGL_INVALID_METADATA
- Metadata SGL Length Invalid: This may occur if the length
of a Metadata SGL is too short. This may occur if the length of a Metadata
SGL is too long and the controller does not support SGL transfers longer
than the amount of data to be transferred as indicated in the SGL Support
field of the Identify Controller data structure.
- NVME_SC_SGL_INVALID_TYPE
- SGL Descriptor Type Invalid: The type of an SGL Descriptor
is a type that is not supported by the controller.
- NVME_SC_CMB_INVALID_USE
- Invalid Use of Controller Memory Buffer: The attempted use
of the Controller Memory Buffer is not supported by the controller.
- NVME_SC_PRP_INVALID_OFFSET
- PRP Offset Invalid: The Offset field for a PRP entry is
invalid.
- NVME_SC_AWU_EXCEEDED
- Atomic Write Unit Exceeded: The length specified exceeds
the atomic write unit size.
- NVME_SC_OP_DENIED
- Operation Denied: The command was denied due to lack of
access rights. Refer to the appropriate security specification.
- NVME_SC_SGL_INVALID_OFFSET
- SGL Offset Invalid: The offset specified in a descriptor is
invalid. This may occur when using capsules for data transfers in NVMe
over Fabrics implementations and an invalid offset in the capsule is
specified.
- NVME_SC_HOSTID_FORMAT
- Host Identifier Inconsistent Format: The NVM subsystem
detected the simultaneous use of 64- bit and 128-bit Host Identifier
values on different controllers.
- NVME_SC_KAT_EXPIRED
- Keep Alive Timer Expired: The Keep Alive Timer
expired.
- NVME_SC_KAT_INVALID
- Keep Alive Timeout Invalid: The Keep Alive Timeout value
specified is invalid.
- NVME_SC_CMD_ABORTED_PREMEPT
- Command Aborted due to Preempt and Abort: The command was
aborted due to a Reservation Acquire command.
- NVME_SC_SANITIZE_FAILED
- Sanitize Failed: The most recent sanitize operation failed
and no recovery action has been successfully completed.
- NVME_SC_SANITIZE_IN_PROGRESS
- Sanitize In Progress: The requested function (e.g.,
command) is prohibited while a sanitize operation is in progress.
- NVME_SC_SGL_INVALID_GRANULARITY
- SGL Data Block Granularity Invalid: The Address alignment
or Length granularity for an SGL Data Block descriptor is invalid.
- NVME_SC_CMD_IN_CMBQ_NOT_SUPP
- Command Not Supported for Queue in CMB: The implementation
does not support submission of the command to a Submission Queue in the
Controller Memory Buffer or command completion to a Completion Queue in
the Controller Memory Buffer.
- NVME_SC_NS_WRITE_PROTECTED
- Namespace is Write Protected: The command is prohibited
while the namespace is write protected as a result of a change in the
namespace write protection state as defined by the Namespace Write
Protection State Machine.
- NVME_SC_CMD_INTERRUPTED
- Command Interrupted: Command processing was interrupted and
the controller is unable to successfully complete the command. The host
should retry the command.
- NVME_SC_TRAN_TPORT_ERROR
- Transient Transport Error: A transient transport error was
detected. If the command is retried on the same controller, the command is
likely to succeed. A command that fails with a transient transport error
four or more times should be treated as a persistent transport error that
is not likely to succeed if retried on the same controller.
- NVME_SC_PROHIBITED_BY_CMD_AND_FEAT
- Command Prohibited by Command and Feature Lockdown: The
command was aborted due to command execution being prohibited by the
Command and Feature Lockdown.
- NVME_SC_ADMIN_CMD_MEDIA_NOT_READY
- Admin Command Media Not Ready: The Admin command requires
access to media and the media is not ready.
- NVME_SC_LBA_RANGE
- LBA Out of Range: The command references an LBA that
exceeds the size of the namespace.
- NVME_SC_CAP_EXCEEDED
- Capacity Exceeded: Execution of the command has caused the
capacity of the namespace to be exceeded.
- NVME_SC_NS_NOT_READY
- Namespace Not Ready: The namespace is not ready to be
accessed as a result of a condition other than a condition that is
reported as an Asymmetric Namespace Access condition.
- NVME_SC_RESERVATION_CONFLICT
- Reservation Conflict: The command was aborted due to a
conflict with a reservation held on the accessed namespace.
- NVME_SC_FORMAT_IN_PROGRESS
- Format In Progress: A Format NVM command is in progress on
the namespace.
- NVME_SC_CQ_INVALID
- Completion Queue Invalid: The Completion Queue identifier
specified in the command does not exist.
- NVME_SC_QID_INVALID
- Invalid Queue Identifier: The creation of the I/O
Completion Queue failed due to an invalid queue identifier specified as
part of the command. An invalid queue identifier is one that is currently
in use or one that is outside the range supported by the controller.
- NVME_SC_QUEUE_SIZE
- Invalid Queue Size: The host attempted to create an I/O
Completion Queue with an invalid number of entries.
- NVME_SC_ABORT_LIMIT
- Abort Command Limit Exceeded: The number of concurrently
outstanding Abort commands has exceeded the limit indicated in the
Identify Controller data structure.
- NVME_SC_ABORT_MISSING
- Abort Command is missing: The abort command is
missing.
- NVME_SC_ASYNC_LIMIT
- Asynchronous Event Request Limit Exceeded: The number of
concurrently outstanding Asynchronous Event Request commands has been
exceeded.
- NVME_SC_FIRMWARE_SLOT
- Invalid Firmware Slot: The firmware slot indicated is
invalid or read only. This error is indicated if the firmware slot exceeds
the number supported.
- NVME_SC_FIRMWARE_IMAGE
- Invalid Firmware Image: The firmware image specified for
activation is invalid and not loaded by the controller.
- NVME_SC_INVALID_VECTOR
- Invalid Interrupt Vector: The creation of the I/O
Completion Queue failed due to an invalid interrupt vector specified as
part of the command.
- NVME_SC_INVALID_LOG_PAGE
- Invalid Log Page: The log page indicated is invalid. This
error condition is also returned if a reserved log page is requested.
- NVME_SC_INVALID_FORMAT
- Invalid Format: The LBA Format specified is not
supported.
- NVME_SC_FW_NEEDS_CONV_RESET
- Firmware Activation Requires Conventional Reset: The
firmware commit was successful, however, activation of the firmware image
requires a conventional reset.
- NVME_SC_INVALID_QUEUE
- Invalid Queue Deletion: Invalid I/O Completion Queue
specified to delete.
- NVME_SC_FEATURE_NOT_SAVEABLE
- Feature Identifier Not Saveable: The Feature Identifier
specified does not support a saveable value.
- NVME_SC_FEATURE_NOT_CHANGEABLE
- Feature Not Changeable: The Feature Identifier is not able
to be changed.
- NVME_SC_FEATURE_NOT_PER_NS
- Feature Not Namespace Specific: The Feature Identifier
specified is not namespace specific. The Feature Identifier settings apply
across all namespaces.
- NVME_SC_FW_NEEDS_SUBSYS_RESET
- Firmware Activation Requires NVM Subsystem Reset: The
firmware commit was successful, however, activation of the firmware image
requires an NVM Subsystem.
- NVME_SC_FW_NEEDS_RESET
- Firmware Activation Requires Controller Level Reset: The
firmware commit was successful; however, the image specified does not
support being activated without a reset.
- NVME_SC_FW_NEEDS_MAX_TIME
- Firmware Activation Requires Maximum Time Violation: The
image specified if activated immediately would exceed the Maximum Time for
Firmware Activation (MTFA) value reported in Identify Controller.
- NVME_SC_FW_ACTIVATE_PROHIBITED
- Firmware Activation Prohibited: The image specified is
being prohibited from activation by the controller for vendor specific
reasons.
- NVME_SC_OVERLAPPING_RANGE
- Overlapping Range: The downloaded firmware image has
overlapping ranges.
- NVME_SC_NS_INSUFFICIENT_CAP
- Namespace Insufficient Capacity: Creating the namespace
requires more free space than is currently available.
- NVME_SC_NS_ID_UNAVAILABLE
- Namespace Identifier Unavailable: The number of namespaces
supported has been exceeded.
- NVME_SC_NS_ALREADY_ATTACHED
- Namespace Already Attached: The controller is already
attached to the namespace specified.
- NVME_SC_NS_IS_PRIVATE
- Namespace Is Private: The namespace is private and is
already attached to one controller.
- NVME_SC_NS_NOT_ATTACHED
- Namespace Not Attached: The request to detach the
controller could not be completed because the controller is not attached
to the namespace.
- NVME_SC_THIN_PROV_NOT_SUPP
- Thin Provisioning Not Supported: Thin provisioning is not
supported by the controller.
- NVME_SC_CTRL_LIST_INVALID
- Controller List Invalid: The controller list provided
contains invalid controller ids.
- NVME_SC_SELF_TEST_IN_PROGRESS
- Device Self-test In Progress: The controller or NVM
subsystem already has a device self-test operation in process.
- NVME_SC_BP_WRITE_PROHIBITED
- Boot Partition Write Prohibited: The command is trying to
modify a locked Boot Partition.
- NVME_SC_INVALID_CTRL_ID
- Invalid Controller Identifier:
- NVME_SC_INVALID_SEC_CTRL_STATE
- Invalid Secondary Controller State
- NVME_SC_INVALID_CTRL_RESOURCES
- Invalid Number of Controller Resources
- NVME_SC_INVALID_RESOURCE_ID
- Invalid Resource Identifier
- NVME_SC_PMR_SAN_PROHIBITED
- Sanitize Prohibited While Persistent Memory Region is
Enabled
- NVME_SC_ANA_GROUP_ID_INVALID
- ANA Group Identifier Invalid: The specified ANA Group
Identifier (ANAGRPID) is not supported in the submitted command.
- NVME_SC_ANA_ATTACH_FAILED
- ANA Attach Failed: The controller is not attached to the
namespace as a result of an ANA condition.
- NVME_SC_INSUFFICIENT_CAP
- Insufficient Capacity: Requested operation requires more
free space than is currently available.
- NVME_SC_NS_ATTACHMENT_LIMIT_EXCEEDED
- Namespace Attachment Limit Exceeded: Attaching the ns to a
controller causes max number of ns attachments allowed to be
exceeded.
- NVME_SC_PROHIBIT_CMD_EXEC_NOT_SUPPORTED
- Prohibition of Command Execution Not Supported
- NVME_SC_IOCS_NOT_SUPPORTED
- I/O Command Set Not Supported
- NVME_SC_IOCS_NOT_ENABLED
- I/O Command Set Not Enabled
- NVME_SC_IOCS_COMBINATION_REJECTED
- I/O Command Set Combination Rejected
- NVME_SC_INVALID_IOCS
- Invalid I/O Command Set
- NVME_SC_ID_UNAVAILABLE
- Identifier Unavailable
- NVME_SC_INVALID_DISCOVERY_INFO
- The discovery information provided in one or more extended
discovery information entries is not applicable for the type of entity
selected in the Entity Type (ETYPE) field of the Discovery Information
Management command data portion’s header.
- NVME_SC_ZONING_DATA_STRUCT_LOCKED
- The requested Zoning data structure is locked on the
CDC.
- NVME_SC_ZONING_DATA_STRUCT_NOTFND
- The requested Zoning data structure does not exist on the
CDC.
- NVME_SC_INSUFFICIENT_DISC_RES
- The number of discover information entries provided in the
data portion of the Discovery Information Management command for a
registration task (i.e., TAS field cleared to 0h) exceeds the available
capacity for new discovery information entries on the CDC or DDC. This may
be a transient condition.
- NVME_SC_REQSTD_FUNCTION_DISABLED
- Fabric Zoning is not enabled on the CDC
- NVME_SC_ZONEGRP_ORIGINATOR_INVLD
- The NQN contained in the ZoneGroup Originator field does
not match the Host NQN used by the DDC to connect to the CDC.
- NVME_SC_BAD_ATTRIBUTES
- Conflicting Dataset Management Attributes
- NVME_SC_INVALID_PI
- Invalid Protection Information
- NVME_SC_READ_ONLY
- Attempted Write to Read Only Range
- NVME_SC_CMD_SIZE_LIMIT_EXCEEDED
- Command Size Limit Exceeded
- NVME_SC_CONNECT_FORMAT
- Incompatible Format: The NVM subsystem does not support the
record format specified by the host.
- NVME_SC_CONNECT_CTRL_BUSY
- Controller Busy: The controller is already associated with
a host.
- NVME_SC_CONNECT_INVALID_PARAM
- Connect Invalid Parameters: One or more of the command
parameters.
- NVME_SC_CONNECT_RESTART_DISC
- Connect Restart Discovery: The NVM subsystem requested is
not available.
- NVME_SC_CONNECT_INVALID_HOST
- Connect Invalid Host: The host is either not allowed to
establish an association to any controller in the NVM subsystem or the
host is not allowed to establish an association to the specified
controller
- NVME_SC_DISCONNECT_INVALID_QTYPE
- Invalid Queue Type: The command was sent on the wrong queue
type.
- NVME_SC_DISCOVERY_RESTART
- Discover Restart: The snapshot of the records is now
invalid or out of date.
- NVME_SC_AUTH_REQUIRED
- Authentication Required: NVMe in-band authentication is
required and the queue has not yet been authenticated.
- NVME_SC_ZNS_INVALID_OP_REQUEST
- Invalid Zone Operation Request: The operation requested is
invalid. This may be due to various conditions, including: attempting to
allocate a ZRWA when a zone is not in the ZSE:Empty state; or invalid
Flush Explicit ZRWA Range Send Zone Action operation.
- NVME_SC_ZNS_ZRWA_RESOURCES_UNAVAILABLE
- ZRWA Resources Unavailable: No ZRWAs are available.
- NVME_SC_ZNS_BOUNDARY_ERROR
- Zone Boundary Error: The command specifies logical blocks
in more than one zone.
- NVME_SC_ZNS_FULL
- Zone Is Full: The accessed zone is in the ZSF:Full
state.
- NVME_SC_ZNS_READ_ONLY
- Zone Is Read Only: The accessed zone is in the ZSRO:Read
Only state.
- NVME_SC_ZNS_OFFLINE
- Zone Is Offline: The accessed zone is in the ZSO:Offline
state.
- NVME_SC_ZNS_INVALID_WRITE
- Zone Invalid Write: The write to a zone was not at the
write pointer.
- NVME_SC_ZNS_TOO_MANY_ACTIVE
- Too Many Active Zones: The controller does not allow
additional active zones.
- NVME_SC_ZNS_TOO_MANY_OPENS
- Too Many Open Zones: The controller does not allow
additional open zones.
- NVME_SC_ZNS_INVAL_TRANSITION
- Invalid Zone State Transition: The request is not a valid
zone state transition.
- NVME_SC_WRITE_FAULT
- Write Fault: The write data could not be committed to the
media.
- NVME_SC_READ_ERROR
- Unrecovered Read Error: The read data could not be
recovered from the media.
- NVME_SC_GUARD_CHECK
- End-to-end Guard Check Error: The command was aborted due
to an end-to-end guard check failure.
- NVME_SC_APPTAG_CHECK
- End-to-end Application Tag Check Error: The command was
aborted due to an end-to-end application tag check failure.
- NVME_SC_REFTAG_CHECK
- End-to-end Reference Tag Check Error: The command was
aborted due to an end-to-end reference tag check failure.
- NVME_SC_COMPARE_FAILED
- Compare Failure: The command failed due to a miscompare
during a Compare command.
- NVME_SC_ACCESS_DENIED
- Access Denied: Access to the namespace and/or LBA range is
denied due to lack of access rights.
- NVME_SC_UNWRITTEN_BLOCK
- Deallocated or Unwritten Logical Block: The command failed
due to an attempt to read from or verify an LBA range containing a
deallocated or unwritten logical block.
- NVME_SC_STORAGE_TAG_CHECK
- End-to-End Storage Tag Check Error: The command was aborted
due to an end-to-end storage tag check failure.
- NVME_SC_ANA_INTERNAL_PATH_ERROR
- Internal Path Error: The command was not completed as the
result of a controller internal error that is specific to the controller
processing the command.
- NVME_SC_ANA_PERSISTENT_LOSS
- Asymmetric Access Persistent Loss: The requested function
(e.g., command) is not able to be performed as a result of the
relationship between the controller and the namespace being in the ANA
Persistent Loss state.
- NVME_SC_ANA_INACCESSIBLE
- Asymmetric Access Inaccessible: The requested function
(e.g., command) is not able to be performed as a result of the
relationship between the controller and the namespace being in the ANA
Inaccessible state.
- NVME_SC_ANA_TRANSITION
- Asymmetric Access Transition: The requested function (e.g.,
command) is not able to be performed as a result of the relationship
between the controller and the namespace transitioning between Asymmetric
Namespace Access states.
- NVME_SC_CTRL_PATH_ERROR
- Controller Pathing Error: A pathing error was detected by
the controller.
- NVME_SC_HOST_PATH_ERROR
- Host Pathing Error: A pathing error was detected by the
host.
- NVME_SC_CMD_ABORTED_BY_HOST
- Command Aborted By Host: The command was aborted as a
result of host action.
- NVME_SC_CRD
- Mask to get value of Command Retry Delay index
- NVME_SC_MORE
- More bit. If set, more status information for this command
as part of the Error Information log that may be retrieved with the Get
Log Page command.
- NVME_SC_DNR
- Do Not Retry bit. If set, if the same command is
re-submitted to any controller in the NVM subsystem, then that
re-submitted command is expected to fail.