LINUX.ORG.RU
ФорумAdmin

приходит oom-killer, хотя памяти дуром.

 ,


0

2

Давече пришел oom-killer и убил сквид. Хотя памяти было дуром.

$ free -m
             total       used       free     shared    buffers     cached
Mem:          8112       1715       6396          0        160       1095
-/+ buffers/cache:        460       7651
Swap:        16371          0      16371

в логах фигурирую следующие строки

DMA free:5660kB min:2496kB low:3120kB high:3744kB active_anon:0kB inactive_anon:0kB active_file:0kB inactive_file:0kB unevictable:0kB isolated(anon):0kB isolated(file):0kB present:15996kB managed:15912kB mlocked:0kB dirty:0kB writeback:0kB mapped:0kB shmem:0kB slab_reclaimable:100kB slab_unreclaimable:7128kB kernel_stack:0kB pagetables:0kB unstable:0kB bounce:0kB free_cma:0kB writeback_tmp:0kB pages_scanned:0 all_unreclaimable? yes

Normal free:80812kB min:128572kB low:160712kB high:192856kB active_anon:0kB inactive_anon:0kB active_file:152kB inactive_file:100kB unevictable:0kB isolated(anon):0kB isolated(file):0kB present:894968kB managed:818540kB mlocked:0kB dirty:0kB writeback:0kB mapped:4kB shmem:0kB slab_reclaimable:9764kB slab_unreclaimable:383492kB kernel_stack:1688kB pagetables:24kB unstable:0kB bounce:0kB free_cma:0kB writeback_tmp:0kB pages_scanned:280 all_unreclaimable? no

HighMem free:6413656kB min:512kB low:293944kB high:587380kB active_anon:860752kB inactive_anon:107940kB active_file:58344kB inactive_file:11924kB unevictable:0kB isolated(anon):0kB isolated(file):0kB present:7472456kB managed:7472456kB mlocked:4kB dirty:0kB writeback:0kB mapped:28724kB shmem:15180kB slab_reclaimable:0kB slab_unreclaimable:0kB kernel_stack:0kB pagetables:3984kB unstable:0kB bounce:0kB free_cma:0kB writeback_tmp:0kB pages_scanned:0 all_unreclaimable? no

насколько я могу понять, проблема с зоной normal, там осталось памяти меньше параметра low(min?). Тут два вопроса, почему память выделялась из этой зоны, а не из HighMem, и почему ядро не сбросило в своп некоторые страницы памяти.

ядро самосбор 3.19.5


Значение sysctl vm.swappiness какое?
Возможно стоит лимит памяти для конкретного пользователя/процесса? Как вариант через ulimit. Также (есть вероятность) может быть причастен SELinux. Включен?

А, ну и еще - система 32 или 64битная? либы? софт? сама сборка сквида?

Komintern ★★★★★ ()
Последнее исправление: Komintern (всего исправлений: 1)
Ответ на: комментарий от Komintern

Сквид для примера, убили так же в этот раз и демон bgpd. От разных пользователей запущены. система debian wheezy. Сквид самосборный, да.

vm.swappiness = 60

система 32битная(в 64 битных нету зоны highmem и есть dma32)

swelf ()
Ответ на: комментарий от swelf

Не знаю, к сожалению, нюансов процесса управления памятью ядром. Но истории о странных косяках 32-битных систем на железе с >4G рам - слышал. Есть какой-то особый смысл в 32битной системе?

Komintern ★★★★★ ()

весь dmesg покажи

anonymous ()
Ответ на: комментарий от swelf

ССЗБ, верни vm.overcommit_memory в 0

https://www.kernel.org/doc/Documentation/vm/overcommit-accounting

Ну и как уже сказал Komintern, на 32-битной ОСи один процесс не сможет получить больше 2.5 - 3 Гб. ядро при этом видит всю память за счёт PAE, но один процесс - не более 3 Гб

router ★★★★★ ()
Ответ на: комментарий от router

3гб? где ты видел 3гб на процесс? у меня всего 1 на все процессы занят

по поводу оверкоммит, его видито коллега выставил в такое значение, после предыдущих падений c oom.

независимо от этих параметров, занятой памяти 1гиг из 8, своп вобще весь свободен. Почему пришел oom?

swelf ()
Ответ на: комментарий от router

oom killer должен убивать когда заканчивается физическая память, и параметр overcommit_memory = 2, как раз это дело должен и предотвратить, ибо у нас реальной память получается больше виртуальной.

swelf ()

У меня так падал Euro Truck Simulator 2 из-за включённого zswap. Используется ли какая-то система сжатия памяти или сжатый рамдиск?

INFOMAN ★★★★★ ()
Ответ на: комментарий от INFOMAN

нет, не используется.

oom killer должен убивать когда заканчивается физическая память

хотя тут может я и не прав. Но дело в том, что вся стабильно работало с момента установски системы,, пару лет наверно, пока не обновились на ядро 3.19.5, ибо были проблемы с драйвером ixgbe для новоустановленных 10гиговых карточек

swelf ()

kmemleak

походу ядро течет. ядро редко аллоцирует себе из хаймм. гугли kmemleak.

anonymous ()
Ответ на: kmemleak от anonymous

Re: kmemleak

и да, блобами обмазывался?

anonymous ()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.