| Предыдущий | Следующий |
| EBADMSG | EOWNERDEAD |
ENOBUFS
Что означает ENOBUFS в Linux
ENOBUFS: Недостаточно места в буфере. Transport stack не смог выделить или поставить в очередь нужные buffers; измеряйте pressure и queue limits в момент ошибки, до cleanup.
В Linux связывайте errno с конкретным системным socket-вызовом и network namespace; одинаковое число без имени вызова и endpoint context недостаточно для диагностики. Полезные технические маркеры из контекста этой ошибки: ENOBUFS, send(), accept(). Записывайте их фактические значения или режимы, а не только символическое имя errno.
Диагностика
- Сопоставьте событие с packet/transport telemetry, если она доступна, и сохраните timestamp первого отказа до reconnect.
- Для повторной попытки создайте явную политику backoff и предел retries; не используйте цикл, который непрерывно повторяет один и тот же системный вызов.
- Зафиксируйте фазу socket lifecycle: создание, bind, connect, send, receive или shutdown; одинаковый endpoint проверяется по-разному на каждой фазе.
- Для Linux сопоставьте событие с process/thread, descriptor и точным syscall; после retry проверьте, не изменился ли объект под тем же числовым дескриптором.
Ссылки
Нужно найти другой код? Найти другой код состояния или ошибки.