Перечисление NVME_STATUS_COMMAND_SPECIFIC_CODES (nvme.h)
Содержит значения, указывающие состояние, относящееся к определенной команде.
Эти коды состояния относятся к NVME_STATUS_TYPE_COMMAND_SPECIFICтипу кода состояния и публикуются контроллером в записи очереди завершения при выполнении команды.
Синтаксис
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;
Константы
NVME_STATUS_COMPLETION_QUEUE_INVALID Идентификатор очереди завершения, указанный в команде Создать очередь отправки ввода-вывода, не существует. |
NVME_STATUS_INVALID_QUEUE_IDENTIFIER Указывает следующее состояние для этих команд: — Создание очереди отправки ввода-вывода. Создание очереди отправки ввода-вывода завершилось сбоем из-за недопустимого идентификатора очереди, указанного в команде. Недопустимый идентификатор очереди — это тот, который используется в настоящее время, или тот, который находится за пределами диапазона, поддерживаемого контроллером. — Удалить очередь отправки ввода-вывода. Идентификатор очереди, указанный в команде, недопустим. Эта ошибка также указывается, если указан идентификатор очереди завершения Администратор. — Создание очереди завершения ввода-вывода. Создание очереди завершения ввода-вывода завершилось сбоем из-за недопустимого идентификатора очереди, указанного в команде. Недопустимый идентификатор очереди — это тот, который используется в настоящее время, или тот, который находится за пределами диапазона, поддерживаемого контроллером. — Удалить очередь завершения ввода-вывода: идентификатор очереди, указанный в команде, недопустим. Эта ошибка также указывается, если указан идентификатор очереди завершения Администратор. |
NVME_STATUS_MAX_QUEUE_SIZE_EXCEEDED Указывает следующее состояние для команд Создать очередь отправки ввода-вывода и Создать очередь завершения ввода-вывода: Узел попытался создать очередь завершения ввода-вывода с недопустимым числом записей. Например, значение, равное нулю, или значение, превышающее максимальное значение, поддерживаемое контроллером, указанным в поле MQESструктуры NVME_CONTROLLER_CAPABILITIES . |
NVME_STATUS_ABORT_COMMAND_LIMIT_EXCEEDED Количество одновременно невыполненных команд прерывания превысило ограничение, указанное в поле ACLструктуры данных Идентификация контроллера. |
NVME_STATUS_ASYNC_EVENT_REQUEST_LIMIT_EXCEEDED Превышено количество одновременно невыполненных команд асинхронного запроса событий. |
NVME_STATUS_INVALID_FIRMWARE_SLOT Слот встроенного ПО, указанный в команде Firmware Commit, недопустим или доступен только для чтения. Эта ошибка указывается, если слот встроенного ПО превышает поддерживаемую версию. |
NVME_STATUS_INVALID_FIRMWARE_IMAGE Образ встроенного ПО, указанный для активации в команде Firmware Commit, недопустим и не загружен контроллером. |
NVME_STATUS_INVALID_INTERRUPT_VECTOR Создание очереди завершения ввода-вывода завершилось сбоем из-за недопустимого вектора прерывания, указанного в команде Создать очередь завершения ввода-вывода. |
NVME_STATUS_INVALID_LOG_PAGE Недопустимая страница журнала, указанная в команде Получить страницу журнала. Это условие ошибки также возвращается при запросе зарезервированной страницы журнала. |
NVME_STATUS_INVALID_FORMAT Указывает следующее состояние для команды Формат NVM: Указанный формат является недопустимым. Это может быть вызвано различными условиями, в том числе: — указание недопустимого номера формата адреса логического блока (LBA). — Включение сведений о защите при недостаточном уровне метаданных для каждого LBA. — недопустимое состояние безопасности. Дополнительные сведения см. в спецификации взаимодействия интерфейса хранилища TCG (SIIS). |
NVME_STATUS_FIRMWARE_ACTIVATION_REQUIRES_CONVENTIONAL_RESET Указывает следующее состояние для команды Firmware Commit: Фиксация встроенного ПО выполнена успешно, однако для активации образа встроенного ПО требуется обычный сброс. Если сброс уровня функций (FLR) или сброс контроллера происходит до обычного сброса, контроллер должен продолжить работу с текущим выполняемым образом встроенного ПО. |
NVME_STATUS_INVALID_QUEUE_DELETION Указывает следующее состояние для команды Удалить очередь завершения ввода-вывода: Удаление указанной очереди завершения ввода-вывода недопустимо. Типичной причиной этого условия ошибки является наличие связанной очереди отправки ввода-вывода, которая не была удалена. |
NVME_STATUS_FEATURE_ID_NOT_SAVEABLE Идентификатор компонента, указанный в команде Set Features, не поддерживает сохраняемое значение. |
NVME_STATUS_FEATURE_NOT_CHANGEABLE Идентификатор компонента, указанный в команде Set Features , не может быть изменен. |
NVME_STATUS_FEATURE_NOT_NAMESPACE_SPECIFIC Идентификатор компонента, указанный в команде Set Features, не зависит от пространства имен. Параметры идентификатора компонента применяются ко всем пространствам имен. |
NVME_STATUS_FIRMWARE_ACTIVATION_REQUIRES_NVM_SUBSYSTEM_RESET Указывает состояние команды Firmware Commit. |
NVME_STATUS_FIRMWARE_ACTIVATION_REQUIRES_RESET Указывает следующее состояние для команды Firmware Commit: Фиксация встроенного ПО выполнена успешно, однако для активации образа встроенного ПО требуется сброс подсистемы NVM. Если какой-либо другой тип сброса происходит до сброса подсистемы NVM, контроллер должен продолжить работу с текущим выполняющимся образом встроенного ПО. |
NVME_STATUS_FIRMWARE_ACTIVATION_REQUIRES_MAX_TIME_VIOLATION Указывает следующее состояние для команды Firmware Commit: Изображение, указанное при немедленной активации, превысит максимальное время активации встроенного ПО (MFTA), указанное в разделе Идентификация контроллера. Чтобы активировать встроенное ПО, необходимо повторно вывести команду Firmware Commit и активировать образ с помощью сброса. |
NVME_STATUS_FIRMWARE_ACTIVATION_PROHIBITED Указывает следующее состояние для команды Firmware Commit: Указанный образ запрещается активация контроллером по конкретным причинам поставщика. Например, контроллер не поддерживает встроенное ПО неработоприемной редакции. |
NVME_STATUS_OVERLAPPING_RANGE Указывает следующее состояние для этих команд: — Фиксация встроенного ПО: эта ошибка указывается, если образ встроенного ПО имеет перекрывающиеся диапазоны. — Задать признаки. Эта ошибка указывается, если структура данных типа диапазона LBA имеет перекрывающиеся диапазоны. — Загрузка образа встроенного ПО: эта ошибка указывается, если образ встроенного ПО имеет перекрывающиеся диапазоны. |
NVME_STATUS_NAMESPACE_INSUFFICIENT_CAPACITY Указывает следующее состояние для команды Управления пространством имен: Для создания пространства имен требуется больше свободного места, чем доступно в настоящее время. Поле Сведения о команде журнала сведений об ошибках указывает общую емкость NVM, необходимую для создания пространства имен в байтах. |
NVME_STATUS_NAMESPACE_IDENTIFIER_UNAVAILABLE Указывает следующее состояние для команды Управления пространством имен: Превышено количество поддерживаемых пространств имен. |
NVME_STATUS_NAMESPACE_ALREADY_ATTACHED Указывает следующее состояние для команды Namespace Attachment: Контроллер уже подключен к указанному пространству имен. |
NVME_STATUS_NAMESPACE_IS_PRIVATE Указывает следующее состояние для команды Namespace Attachment: Контроллер не подключен к пространству имен. Не удалось выполнить запрос на присоединение контроллера, так как пространство имен является частным и уже подключено к одному контроллеру. |
NVME_STATUS_NAMESPACE_NOT_ATTACHED Указывает следующее состояние для команды Namespace Attachment: Контроллер не подключен к пространству имен. Не удалось выполнить запрос на отключение контроллера. |
NVME_STATUS_NAMESPACE_THIN_PROVISIONING_NOT_SUPPORTED |
NVME_STATUS_CONTROLLER_LIST_INVALID Указывает следующее состояние для команды Namespace Attachment: Предоставленный список контроллеров недопустим. |
NVME_STATUS_DEVICE_SELF_TEST_IN_PROGRESS Указывает состояние команды самотестирования устройства. |
NVME_STATUS_BOOT_PARTITION_WRITE_PROHIBITED Указывает состояние команды Firmware Commit. |
NVME_STATUS_INVALID_CONTROLLER_IDENTIFIER Указывает состояние команды Virtualization Management. |
NVME_STATUS_INVALID_SECONDARY_CONTROLLER_STATE Указывает состояние команды Virtualization Management. |
NVME_STATUS_INVALID_NUMBER_OF_CONTROLLER_RESOURCES Указывает состояние команды Virtualization Management. |
NVME_STATUS_INVALID_RESOURCE_IDENTIFIER Указывает состояние команды Virtualization Management. |
NVME_STATUS_STREAM_RESOURCE_ALLOCATION_FAILED Указывает состояние для команды Директива потоков. |
NVME_STATUS_NVM_CONFLICTING_ATTRIBUTES Указывает следующее состояние для этих команд: Управление набором данных, Чтение, Запись Атрибуты, указанные в команде, конфликтуют. |
NVME_STATUS_NVM_INVALID_PROTECTION_INFORMATION Указывает следующее состояние для этих команд: Compare, Read, Write, Write Zeroes Параметры сведений о защите, указанные в команде , недопустимы. |
NVME_STATUS_NVM_ATTEMPTED_WRITE_TO_READ_ONLY_RANGE Указывает следующее состояние для этих команд: Управление набором данных, Запись, Запись неисправимая, Запись нули При необходимости контроллер может сообщить об этом состоянии, если предпринята попытка освободить диапазон только для чтения. |
Требования
Требование | Значение |
---|---|
Минимальная версия клиента | Windows 10 |
Верхняя часть | nvme.h |
Обратная связь
https://aka.ms/ContentUserFeedback.
Ожидается в ближайшее время: в течение 2024 года мы постепенно откажемся от GitHub Issues как механизма обратной связи для контента и заменим его новой системой обратной связи. Дополнительные сведения см. в разделеОтправить и просмотреть отзыв по