| Предыдущий | Следующий |
| kOSReturnSuccess | MACH_MSG_SUCCESS |
KERN_SUCCESS
Что означает KERN_SUCCESS
KERN_SUCCESS — нулевое значение kern_return_t. В XNU оно определено как 0 и означает, что конкретный вызов Mach завершился успешно.
Что всё равно нужно проверить
- Интерпретируйте ноль вместе с API, который его вернул.
kern_return_tописывает результат операции ядра Mach, а не универсальный успех любого POSIX/IOKit вызова. - Проверьте документированные выходные значения: count, flavor, возвращённые Mach port rights, адреса или другие объекты. Успешный status не отменяет контракт размера и владения.
- Если вызов передаёт права Mach, освободите или передайте их ровно так, как требует интерфейс; утечка rights возможна и после
KERN_SUCCESS.
Практическая обработка
Не создавайте отдельный recovery-path для KERN_SUCCESS. Продолжайте нормальный путь только после проверки outputs конкретной процедуры. Если последующий шаг завершается ошибкой, диагностируйте уже его status и не приписывайте причину предыдущему успешному вызову.
Технические ссылки
Нужно найти другой код? Найти другой код состояния или ошибки.
