NVME_STATUS_COMMAND_SPECIFIC_CODES-Enumeration (nvme.h)
Enthält Werte, die den Status angeben, der für einen bestimmten Befehl spezifisch ist.
Diese Statuscodes sind vom NVME_STATUS_TYPE_COMMAND_SPECIFICStatuscodetyp und werden vom Controller in einem Vervollständigungswarteschlangeneintrag bereitgestellt, wenn ein Befehl abgeschlossen ist.
Syntax
typedef enum {
NVME_STATUS_COMPLETION_QUEUE_INVALID,
NVME_STATUS_INVALID_QUEUE_IDENTIFIER,
NVME_STATUS_MAX_QUEUE_SIZE_EXCEEDED,
NVME_STATUS_ABORT_COMMAND_LIMIT_EXCEEDED,
NVME_STATUS_ASYNC_EVENT_REQUEST_LIMIT_EXCEEDED,
NVME_STATUS_INVALID_FIRMWARE_SLOT,
NVME_STATUS_INVALID_FIRMWARE_IMAGE,
NVME_STATUS_INVALID_INTERRUPT_VECTOR,
NVME_STATUS_INVALID_LOG_PAGE,
NVME_STATUS_INVALID_FORMAT,
NVME_STATUS_FIRMWARE_ACTIVATION_REQUIRES_CONVENTIONAL_RESET,
NVME_STATUS_INVALID_QUEUE_DELETION,
NVME_STATUS_FEATURE_ID_NOT_SAVEABLE,
NVME_STATUS_FEATURE_NOT_CHANGEABLE,
NVME_STATUS_FEATURE_NOT_NAMESPACE_SPECIFIC,
NVME_STATUS_FIRMWARE_ACTIVATION_REQUIRES_NVM_SUBSYSTEM_RESET,
NVME_STATUS_FIRMWARE_ACTIVATION_REQUIRES_RESET,
NVME_STATUS_FIRMWARE_ACTIVATION_REQUIRES_MAX_TIME_VIOLATION,
NVME_STATUS_FIRMWARE_ACTIVATION_PROHIBITED,
NVME_STATUS_OVERLAPPING_RANGE,
NVME_STATUS_NAMESPACE_INSUFFICIENT_CAPACITY,
NVME_STATUS_NAMESPACE_IDENTIFIER_UNAVAILABLE,
NVME_STATUS_NAMESPACE_ALREADY_ATTACHED,
NVME_STATUS_NAMESPACE_IS_PRIVATE,
NVME_STATUS_NAMESPACE_NOT_ATTACHED,
NVME_STATUS_NAMESPACE_THIN_PROVISIONING_NOT_SUPPORTED,
NVME_STATUS_CONTROLLER_LIST_INVALID,
NVME_STATUS_DEVICE_SELF_TEST_IN_PROGRESS,
NVME_STATUS_BOOT_PARTITION_WRITE_PROHIBITED,
NVME_STATUS_INVALID_CONTROLLER_IDENTIFIER,
NVME_STATUS_INVALID_SECONDARY_CONTROLLER_STATE,
NVME_STATUS_INVALID_NUMBER_OF_CONTROLLER_RESOURCES,
NVME_STATUS_INVALID_RESOURCE_IDENTIFIER,
NVME_STATUS_SANITIZE_PROHIBITED_ON_PERSISTENT_MEMORY,
NVME_STATUS_INVALID_ANA_GROUP_IDENTIFIER,
NVME_STATUS_ANA_ATTACH_FAILED,
NVME_IO_COMMAND_SET_NOT_SUPPORTED,
NVME_IO_COMMAND_SET_NOT_ENABLED,
NVME_IO_COMMAND_SET_COMBINATION_REJECTED,
NVME_IO_COMMAND_SET_INVALID,
NVME_STATUS_STREAM_RESOURCE_ALLOCATION_FAILED,
NVME_STATUS_ZONE_INVALID_FORMAT,
NVME_STATUS_NVM_CONFLICTING_ATTRIBUTES,
NVME_STATUS_NVM_INVALID_PROTECTION_INFORMATION,
NVME_STATUS_NVM_ATTEMPTED_WRITE_TO_READ_ONLY_RANGE,
NVME_STATUS_NVM_COMMAND_SIZE_LIMIT_EXCEEDED,
NVME_STATUS_ZONE_BOUNDARY_ERROR,
NVME_STATUS_ZONE_FULL,
NVME_STATUS_ZONE_READ_ONLY,
NVME_STATUS_ZONE_OFFLINE,
NVME_STATUS_ZONE_INVALID_WRITE,
NVME_STATUS_ZONE_TOO_MANY_ACTIVE,
NVME_STATUS_ZONE_TOO_MANY_OPEN,
NVME_STATUS_ZONE_INVALID_STATE_TRANSITION
} NVME_STATUS_COMMAND_SPECIFIC_CODES;
Konstanten
NVME_STATUS_COMPLETION_QUEUE_INVALID Der im Befehl E/A-Übermittlungswarteschlange erstellen angegebene Bezeichner der Vervollständigungswarteschlange ist nicht vorhanden. |
NVME_STATUS_INVALID_QUEUE_IDENTIFIER Gibt den folgenden Status für diese Befehle an: - E/A-Übermittlungswarteschlange erstellen: Fehler bei der Erstellung der E/A-Übermittlungswarteschlange aufgrund eines ungültigen Warteschlangenbezeichners, der im Rahmen des Befehls angegeben wurde. Ein ungültiger Warteschlangenbezeichner ist eine, die derzeit verwendet wird, oder eine, die sich außerhalb des vom Controller unterstützten Bereichs befindet. - E/A-Übermittlungswarteschlange löschen: Der im Befehl angegebene Warteschlangenbezeichner ist ungültig. Dieser Fehler wird auch angezeigt, wenn der Admin Vervollständigungswarteschlangenbezeichner angegeben ist. - E/A-Vervollständigungswarteschlange erstellen: Fehler bei der Erstellung der E/A-Vervollständigungswarteschlange aufgrund eines ungültigen Warteschlangenbezeichners, der im Rahmen des Befehls angegeben wurde. Ein ungültiger Warteschlangenbezeichner ist eine, die derzeit verwendet wird, oder eine, die sich außerhalb des vom Controller unterstützten Bereichs befindet. - E/A-Vervollständigungswarteschlange löschen: Der im Befehl angegebene Warteschlangenbezeichner ist ungültig. Dieser Fehler wird auch angezeigt, wenn der Admin Vervollständigungswarteschlangenbezeichner angegeben ist. |
NVME_STATUS_MAX_QUEUE_SIZE_EXCEEDED Gibt den folgenden Status für die Befehle E/A-Übermittlungswarteschlange erstellen und E/A-Vervollständigungswarteschlange erstellen an: Der Host hat versucht, eine E/A-Vervollständigungswarteschlange mit einer ungültigen Anzahl von Einträgen zu erstellen. Beispielsweise ein Wert von null oder ein Wert, der das vom Controller im Feld MQES der NVME_CONTROLLER_CAPABILITIES-Struktur angegebene Maximalwert überschreitet. |
NVME_STATUS_ABORT_COMMAND_LIMIT_EXCEEDED Die Anzahl gleichzeitig ausstehender Abbruchbefehle hat den grenzwert überschritten, der im Feld ACL der Datenstruktur Identifizieren des Controllers angegeben ist. |
NVME_STATUS_ASYNC_EVENT_REQUEST_LIMIT_EXCEEDED Die Anzahl gleichzeitig ausstehender Asynchroner Ereignisanforderungsbefehle wurde überschritten. |
NVME_STATUS_INVALID_FIRMWARE_SLOT Der im Befehl Firmware Commit angegebene Firmwareslot ist ungültig oder schreibgeschützt. Dieser Fehler wird angezeigt, wenn der Firmwareslot die unterstützte Anzahl überschreitet. |
NVME_STATUS_INVALID_FIRMWARE_IMAGE Das für die Aktivierung im Befehl Firmware Commit angegebene Firmwareimage ist ungültig und wird nicht vom Controller geladen. |
NVME_STATUS_INVALID_INTERRUPT_VECTOR Fehler bei der Erstellung der E/A-Vervollständigungswarteschlange aufgrund eines ungültigen Interruptvektors, der im Rahmen des Befehls E/A-Vervollständigungswarteschlange erstellen angegeben wurde. |
NVME_STATUS_INVALID_LOG_PAGE Die protokollseitige Angabe im Befehl Protokollseite abrufen ist ungültig. Diese Fehlerbedingung wird auch zurückgegeben, wenn eine reservierte Protokollseite angefordert wird. |
NVME_STATUS_INVALID_FORMAT Gibt den folgenden Status für den Befehl NVM format an: Das angegebene Format ist ungültig. Dies kann auf verschiedene Bedingungen zurückzuführen sein, einschließlich: – Angeben einer ungültigen LBA-Formatnummer (Logical Block Address). - Aktivieren von Schutzinformationen, wenn nicht genügend Metadaten pro LBA vorhanden sind. – Ungültiger Sicherheitsstatus. Weitere Informationen finden Sie in der TCG Storage Interface Interactions Specification (SIIS). |
NVME_STATUS_FIRMWARE_ACTIVATION_REQUIRES_CONVENTIONAL_RESET Gibt den folgenden Status für den Befehl Firmware Commit an: Der Firmwarecommit war erfolgreich, die Aktivierung des Firmwareimages erfordert jedoch ein herkömmliches Zurücksetzen. Wenn vor einem herkömmlichen Zurücksetzen eine FlR-Zurücksetzung (Function Level Reset) oder eine Controllerzurücksetzung erfolgt, muss der Controller den Betrieb mit dem aktuell ausgeführten Firmwareimage fortsetzen. |
NVME_STATUS_INVALID_QUEUE_DELETION Gibt den folgenden Status für den Befehl E/A-Vervollständigungswarteschlange löschen an: Es ist ungültig, die angegebene E/A-Vervollständigungswarteschlange zu löschen. Der typische Grund für diese Fehlerbedingung ist, dass eine zugeordnete E/A-Übermittlungswarteschlange vorhanden ist, die nicht gelöscht wurde. |
NVME_STATUS_FEATURE_ID_NOT_SAVEABLE Der im Befehl Features festlegen angegebene Featurebezeichner unterstützt keinen speicherbaren Wert. |
NVME_STATUS_FEATURE_NOT_CHANGEABLE Der im Befehl Features festlegen angegebene Featurebezeichner kann nicht geändert werden. |
NVME_STATUS_FEATURE_NOT_NAMESPACE_SPECIFIC Der im Befehl Features festlegen angegebene Featurebezeichner ist nicht namespacespezifisch. Die Featurebezeichnereinstellungen gelten für alle Namespaces. |
NVME_STATUS_FIRMWARE_ACTIVATION_REQUIRES_NVM_SUBSYSTEM_RESET Gibt den Status für den Befehl Firmware Commit an. |
NVME_STATUS_FIRMWARE_ACTIVATION_REQUIRES_RESET Gibt den folgenden Status für den Befehl Firmware Commit an: Der Firmwarecommit war erfolgreich, die Aktivierung des Firmwareimages erfordert jedoch eine NVM-Subsystemzurücksetzung. Wenn vor einer NVM-Subsystemzurücksetzung eine andere Art des Zurücksetzens erfolgt, muss der Controller den Betrieb mit dem aktuell ausgeführten Firmwareimage fortsetzen. |
NVME_STATUS_FIRMWARE_ACTIVATION_REQUIRES_MAX_TIME_VIOLATION Gibt den folgenden Status für den Befehl Firmware Commit an: Das angegebene Bild, wenn es sofort aktiviert wird, überschreitet den mfTA-Wert (Maximum Time for Firmware Activation, maximale Zeit für die Firmwareaktivierung), der in "Controller identifizieren" gemeldet wurde. Um die Firmware zu aktivieren, muss der Firmware Commit-Befehl erneut ausgegeben und das Image mithilfe eines Zurücksetzens aktiviert werden. |
NVME_STATUS_FIRMWARE_ACTIVATION_PROHIBITED Gibt den folgenden Status für den Befehl Firmware Commit an: Die Aktivierung des angegebenen Images durch den Controller ist aus herstellerspezifischen Gründen untersagt. Der Controller unterstützt z. B. keine Downrevisionsfirmware. |
NVME_STATUS_OVERLAPPING_RANGE Gibt den folgenden Status für diese Befehle an: - Firmwarecommit: Dieser Fehler wird angezeigt, wenn das Firmwareimage überlappende Bereiche aufweist. - Features festlegen: Dieser Fehler wird angezeigt, wenn die LBA-Bereichstyp-Datenstruktur überlappende Bereiche aufweist. - Firmware Image Download: Dieser Fehler wird angezeigt, wenn das Firmwareimage überlappende Bereiche aufweist. |
NVME_STATUS_NAMESPACE_INSUFFICIENT_CAPACITY Gibt den folgenden Status für den Befehl Namespaceverwaltung an: Das Erstellen des Namespace erfordert mehr freien Speicherplatz als derzeit verfügbar ist. Das Feld Befehlsspezifische Informationen des Fehlerinformationsprotokolls gibt die Gesamtmenge der NVM-Kapazität an, die zum Erstellen des Namespaces in Bytes erforderlich ist. |
NVME_STATUS_NAMESPACE_IDENTIFIER_UNAVAILABLE Gibt den folgenden Status für den Befehl Namespaceverwaltung an: Die Anzahl der unterstützten Namespaces wurde überschritten. |
NVME_STATUS_NAMESPACE_ALREADY_ATTACHED Gibt den folgenden Status für den Befehl Namespaceanlage an: Der Controller ist bereits an den angegebenen Namespace angefügt. |
NVME_STATUS_NAMESPACE_IS_PRIVATE Gibt den folgenden Status für den Befehl Namespaceanlage an: Der Controller ist nicht an den Namespace angefügt. Die Anforderung zum Anfügen des Controllers konnte nicht abgeschlossen werden, da der Namespace privat ist und bereits an einen Controller angefügt ist. |
NVME_STATUS_NAMESPACE_NOT_ATTACHED Gibt den folgenden Status für den Befehl Namespaceanlage an: Der Controller ist nicht an den Namespace angefügt. Die Anforderung zum Trennen des Controllers konnte nicht abgeschlossen werden. |
NVME_STATUS_NAMESPACE_THIN_PROVISIONING_NOT_SUPPORTED |
NVME_STATUS_CONTROLLER_LIST_INVALID Gibt den folgenden Status für den Befehl Namespaceanlage an: Die angegebene Controllerliste ist ungültig. |
NVME_STATUS_DEVICE_SELF_TEST_IN_PROGRESS Gibt den Status für den Befehl Device Self-test an. |
NVME_STATUS_BOOT_PARTITION_WRITE_PROHIBITED Gibt den Status für den Befehl Firmware Commit an. |
NVME_STATUS_INVALID_CONTROLLER_IDENTIFIER Gibt den Status für den Befehl Virtualisierungsverwaltung an. |
NVME_STATUS_INVALID_SECONDARY_CONTROLLER_STATE Gibt den Status für den Befehl Virtualisierungsverwaltung an. |
NVME_STATUS_INVALID_NUMBER_OF_CONTROLLER_RESOURCES Gibt den Status für den Befehl Virtualisierungsverwaltung an. |
NVME_STATUS_INVALID_RESOURCE_IDENTIFIER Gibt den Status für den Befehl Virtualisierungsverwaltung an. |
NVME_STATUS_STREAM_RESOURCE_ALLOCATION_FAILED Gibt den Status für den Befehl Streams-Direktive an. |
NVME_STATUS_NVM_CONFLICTING_ATTRIBUTES Gibt den folgenden Status für diese Befehle an: Datasetverwaltung, Lesen, Schreiben Die im Befehl angegebenen Attribute stehen in Konflikt. |
NVME_STATUS_NVM_INVALID_PROTECTION_INFORMATION Gibt den folgenden Status für diese Befehle an: Vergleichen, Lesen, Schreiben, Nullen schreiben Die im Befehl angegebenen Einstellungen für Schutzinformationen sind ungültig. |
NVME_STATUS_NVM_ATTEMPTED_WRITE_TO_READ_ONLY_RANGE Gibt den folgenden Status für diese Befehle an: Datasetverwaltung, Schreiben, Nicht korrigierbar schreiben, Nullen schreiben Der Controller kann diesen Status optional melden, wenn ein Deallocate für einen schreibgeschützten Bereich versucht wird. |
Anforderungen
Unterstützte Mindestversion (Client) | Windows 10 |
Kopfzeile | nvme.h |