Что означает код errno 105 (ENOBUFS) в Linux?

 
Также может означать:
КонстантаТипОС
ERROR_SEM_OWNER_DIEDОшибка WindowsWindows
EOWNERDEADerrnomacOS
ECANCELEDerrnoWindows
IO1_INITIALIZATION_FAILEDКод BSODWindows
Предыдущий Следующий
EBADMSG EOWNERDEAD

ENOBUFS

Что означает ENOBUFS

ENOBUFS в Linux означает нехватку буферного ресурса или невозможность поставить данные в очередь. На сетевом пути это обычно относится к ресурсам ядра, поэтому увеличение только пользовательского send/receive buffer может не устранить причину.

Что проверить

  • Снимите размеры socket buffers, статистику qdisc и счётчики interface drops в момент ошибки.
  • Проверьте memory pressure и лимиты очередей транспортного стека, а также всплески трафика перед ENOBUFS.
  • Для netlink учитывайте возможную потерю сообщений: после переполнения может потребоваться повторный dump состояния.

Как подтвердить исправление

Исправление подтверждено, если при прежней нагрузке ENOBUFS больше не возникает, а счётчики drops/overflow и глубина соответствующей очереди остаются в ожидаемых пределах.

Технические ссылки


Нужно найти другой код? Найти другой код состояния или ошибки.