| Предыдущий | Следующий |
| kOSKextReturnBootLevel | kOSKextReturnLoadedVersionDiffers |
kOSKextReturnNotLoadable
Итоговый результат, для которого нужна предшествующая диагностика
kOSKextReturnNotLoadable — обобщающий результат: XNU сообщает, что kext невозможно загрузить, но не кодирует первопричину в возвращаемом значении. Исходный код загрузчика Apple использует его после неудачных проверок подлинности или доступа, поэтому первое предшествующее сообщение ценнее итогового статуса.
Не сводите результат к одной причине, например неверной подписи. Более ранние этапы могли обнаружить проблему проверки, недоступную зависимость, отсутствующую архитектуру или ограничение политики. Задача диагностики — найти первый этап, отклонивший выбранный набор bundle.
Как сделать результат практичным
- Сохраните полный вывод загрузчика, начиная до итогового кода возврата.
- Определите точный целевой bundle, все разрешённые зависимости, версию macOS и соответствующую архитектуру загрузки.
- Классифицируйте первую ошибку как проверку, аутентификацию, разрешение зависимостей, архитектуру или политику до попытки исправления.
- В версиях macOS, создающих Auxiliary Kernel Collection для сторонних kext, отличайте ошибку предварительной проверки от изменения, требующего перезагрузки для использования новой коллекции.
Ссылки
- XNU: OSKextLib.h
- Apple kext_tools: kextload_main.c
- Apple Platform Security: безопасное расширение ядра
Нужно найти другой код? Найти другой код состояния или ошибки.
