Помилка розподілу сторінки - У мене не вистачає пам'яті?


24

Останнім часом я помітив такі записи на kern.logодному з моїх серверів:

Feb 16 00:24:05 aramis kernel: swapper: page allocation failure. order:0, mode:0x20

Я хотів би знати:

  1. Що саме означає це повідомлення?
  2. У мене на сервері не вистачає пам'яті?

Використання свопів досить низьке (менше 10%), і поки що я не помітив жодних процесів, які вбиваються через брак пам'яті.

Додаткова інформація:

  • Сервер - це екземпляр Xen (DomU), на якому працює Debian 6.0
  • Він має 512 Мб оперативної пам’яті та розділ обміну 512 Мб
  • Навантаження процесора всередині віртуальної машини показує в середньому 0,25

Відповіді:


14

Помилка Debian 666021, здається, є повідомленням про цю ж проблему. Пропозиція є:

#change value for this boot
sysctl -w vm.min_free_kbytes=65536

#change value for subsequent boots
echo "vm.min_free_kbytes=65536" >> /etc/sysctl.conf

http://russ.garrett.co.uk/2009/01/01/linux-kernel-tuning/ обговорює, коли зміна цього параметра може бути корисною, відтвореною тут:

Це повідомляє ядро ​​намагатися постійно зберігати 64 Мб оперативної пам’яті. Це корисно у двох основних випадках:

  • Машини без обмежень, де ви не хочете, щоб вхідний мережевий трафік перевантажував ядро ​​і примушував OOM, перш ніж він встигне промити будь-які буфери.

  • машини x86 з тієї ж причини: архітектура x86 дозволяє лише передавати DMA нижче приблизно 900 МБ оперативної пам’яті. Таким чином, ви можете закінчитись химерною ситуацією помилки OOM з тоннами оперативної пам’яті.

Я застосував це налаштування на моїй машині 3.2.12-gentoo x86, але я все одно отримую ці помилки.


Це саме може статися з певними пристроями, наприклад, з контролером MPT Fusion SCSI, рекомендується тримати vm.min_free_kbytes близько 100 мегабайт. Або принаймні, як це було раніше, коли мені востаннє довелося використовувати ті речі з 32-розрядними дистрибутивами Linux. Речі могли змінитися відтоді.
Janne Pikkarainen

ВАЖЛИВО ПОПЕРЕДЖЕННЯ . echo 104857600 > /proc/sys/vm/min_free_kbytes ПРИЧИНА МОЮ СИСТЕМУ КЕРНЕЛЬ ПАНІК, відтворено . Досить небагато тексту полетіло вгору по екрану, що я не сподівався прочитати, але останні повідомлення стосувались мого ключа Wi-Fi, тому ця зламаність може бути специфічною для моєї системи. Це, як сказано, тріпотіть обережно.
i336_

Ох, це в кілобайтах . Я не можу конкретно пригадати, чи робив я 104857600 або 10485760, але якщо я зробив попередній, я спробував зарезервувати 100 Гб, на якому цей ноутбук не встановлений;) Я спробую коли-небудь познайомитися з цим у віртуальній машині.
i336_

1

Я щойно працював над цією помилкою в Lenovo NAS під керуванням Debian 5 і ядром 2.6.39.3 64-бітовим.

Повідомлення є інформаційними, незважаючи на те, що виглядають страшно, згідно https://www.novell.com/support/kb/doc.php?id=7002803

Однак вони заповнювали мій обмежений кореневий розділ (цей пристрій має кореневий розділ на 50 Мбайт ?!)

Виправлення для мене було набір vm.min_free_kbytesз 65536пуху до 16384.

Після цього ОС все ще має 107 Мбайт вільної пам’яті та 2 ГБ буферів. Це не має сенсу, але воно припинило всю реєстрацію.


Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.