| Предыдущий | Следующий |
| KERN_INVALID_ARGUMENT | KERN_RESOURCE_SHORTAGE |
KERN_FAILURE
KERN_FAILURE — явное универсальное значение ошибки в XNU kern_return_t . Оно подтверждает, что запрошенная операция Mach не завершилась, но не объясняет, была ли причина в правах порта, состоянии памяти, решении политики или сбое конкретной службы.
Поэтому диагностическую ценность имеет граница, на которой появился этот код. Сохраните любой более точный статус нижнего уровня, конкретный вызов API и этап сбоя: проверка входных данных, постановка работы в очередь или завершение. Слепой повтор может быть неверным: некоторые операции Mach изменяют состояние объекта или передают права, и только контракт конкретного API определяет безопасность повтора.
Как сохранить практическую ценность ошибки
- Записывайте имя API, целевую задачу или порт и стабильные идентификаторы запроса.
- Перехватывайте более точные статусы до того, как оболочка свернёт их в
KERN_FAILURE. - Отличайте её от
KERN_DENIED, которое XNU резервирует для решения политики безопасности. - Используйте документацию конкретного API и диагностику на стороне сервера, чтобы найти место потери детализации.
Ссылки
Нужно найти другой код? Найти другой код состояния или ошибки.
