NVME_STATUS_COMMAND_SPECIFIC_CODES-Enumeration (nvme.h)
Enthält Werte, die status angeben, die für einen bestimmten Befehl spezifisch sind.
Diese status Codes haben den 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 die folgenden status für diese Befehle an: - E/A-Übermittlungswarteschlange erstellen: Fehler beim Erstellen 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 bezeichner Admin Abschlusswarteschlange angegeben ist. - E/A-Vervollständigungswarteschlange erstellen: Fehler beim Erstellen der E/A-Abschlusswarteschlange 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 bezeichner Admin Abschlusswarteschlange angegeben ist. |
NVME_STATUS_MAX_QUEUE_SIZE_EXCEEDED Gibt die folgenden status für die Befehle E/A-Übermittlungswarteschlange erstellen und E/A-Abschlusswarteschlange 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 0 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 der gleichzeitig ausstehenden Abort-Befehle hat den im Feld ACL der Datenstruktur "Controller identifizieren" angegebenen Grenzwert überschritten. |
NVME_STATUS_ASYNC_EVENT_REQUEST_LIMIT_EXCEEDED Die Anzahl gleichzeitig ausstehender Befehle für die asynchrone Ereignisanforderung 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 Firmwarecommit 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 die folgende status für den Befehl Format NVM 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 die folgende status für den Firmwarecommit-Befehl 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 die folgende status für den Befehl E/A-Abschlusswarteschlange 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 sparbaren Wert. |
NVME_STATUS_FEATURE_NOT_CHANGEABLE Der im Befehl Features festlegen angegebene Featurebezeichner wird möglicherweise nicht geändert. |
NVME_STATUS_FEATURE_NOT_NAMESPACE_SPECIFIC Der im Befehl Features festlegen angegebene Featurebezeichner ist nicht namespacespezifisch. Die Einstellungen für Featurebezeichner gelten für alle Namespaces. |
NVME_STATUS_FIRMWARE_ACTIVATION_REQUIRES_NVM_SUBSYSTEM_RESET Gibt status für den Befehl Firmwarecommit an. |
NVME_STATUS_FIRMWARE_ACTIVATION_REQUIRES_RESET Gibt die folgende status für den Firmwarecommit-Befehl an: Der Firmwarecommit war erfolgreich, die Aktivierung des Firmwareimages erfordert jedoch eine ZURÜCKsetzung des NVM-Subsystems. Wenn vor dem Zurücksetzen des NVM-Subsystems ein anderer Zurücksetzungstyp auftritt, muss der Controller den Betrieb mit dem aktuell ausgeführten Firmwareimage fortsetzen. |
NVME_STATUS_FIRMWARE_ACTIVATION_REQUIRES_MAX_TIME_VIOLATION Gibt die folgende status für den Firmwarecommit-Befehl an: Das angegebene Bild, wenn es sofort aktiviert wird, würde den unter Identifizieren des Controllers gemeldeten MfTA-Wert (Maximum Time for Firmware Activation, maximale Zeit für die Firmwareaktivierung) überschreiten. Um die Firmware zu aktivieren, muss der Firmwarecommit-Befehl erneut ausgegeben und das Image durch ein Zurücksetzen aktiviert werden. |
NVME_STATUS_FIRMWARE_ACTIVATION_PROHIBITED Gibt die folgende status für den Firmwarecommit-Befehl an: Die Aktivierung des angegebenen Images durch den Controller ist aus herstellerspezifischen Gründen untersagt. Der Controller unterstützt beispielsweise keine Herunterrevisionsfirmware. |
NVME_STATUS_OVERLAPPING_RANGE Gibt die 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. - Herunterladen des Firmwareimages: Dieser Fehler wird angezeigt, wenn das Firmwareimage überlappende Bereiche aufweist. |
NVME_STATUS_NAMESPACE_INSUFFICIENT_CAPACITY Gibt die folgende status für den Namespaceverwaltungsbefehl 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 die folgende status für den Namespaceverwaltungsbefehl an: Die Anzahl der unterstützten Namespaces wurde überschritten. |
NVME_STATUS_NAMESPACE_ALREADY_ATTACHED Gibt die folgende status für den Namespace Attachment-Befehl an: Der Controller ist bereits an den angegebenen Namespace angefügt. |
NVME_STATUS_NAMESPACE_IS_PRIVATE Gibt die folgende status für den Namespace Attachment-Befehl 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 die folgende status für den Namespace Attachment-Befehl 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 die folgende status für den Namespace Attachment-Befehl an: Die angegebene Controllerliste ist ungültig. |
NVME_STATUS_DEVICE_SELF_TEST_IN_PROGRESS Gibt status für den Befehl Selbsttest des Geräts an. |
NVME_STATUS_BOOT_PARTITION_WRITE_PROHIBITED Gibt status für den Befehl Firmwarecommit an. |
NVME_STATUS_INVALID_CONTROLLER_IDENTIFIER Gibt status für den Befehl Virtualisierungsverwaltung an. |
NVME_STATUS_INVALID_SECONDARY_CONTROLLER_STATE Gibt status für den Virtualisierungsverwaltungsbefehl an. |
NVME_STATUS_INVALID_NUMBER_OF_CONTROLLER_RESOURCES Gibt status für den Befehl Virtualisierungsverwaltung an. |
NVME_STATUS_INVALID_RESOURCE_IDENTIFIER Gibt status für den Befehl Virtualisierungsverwaltung an. |
NVME_STATUS_STREAM_RESOURCE_ALLOCATION_FAILED Gibt status für den Befehl Streams-Direktive an. |
NVME_STATUS_NVM_CONFLICTING_ATTRIBUTES Gibt die 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 die folgenden status für diese Befehle an: Compare, Read, Write, Write Zeroes Die im Befehl angegebenen Einstellungen für Schutzinformationen sind ungültig. |
NVME_STATUS_NVM_ATTEMPTED_WRITE_TO_READ_ONLY_RANGE Gibt die folgenden status für diese Befehle an: Datasetverwaltung, Schreiben, Nicht korrigierbar schreiben, Nullen schreiben Der Controller kann diese status optional melden, wenn versucht wird, die Zuordnung für einen schreibgeschützten Bereich zu aufheben. |
Anforderungen
Anforderung | Wert |
---|---|
Unterstützte Mindestversion (Client) | Windows 10 |
Kopfzeile | nvme.h |
Feedback
https://aka.ms/ContentUserFeedback.
Bald verfügbar: Im Laufe des Jahres 2024 werden wir GitHub-Issues stufenweise als Feedbackmechanismus für Inhalte abbauen und durch ein neues Feedbacksystem ersetzen. Weitere Informationen finden Sie unterFeedback senden und anzeigen für