Frage Seitenzuordnungsfehler - Ist der Arbeitsspeicher erschöpft?


In letzter Zeit habe ich Einträge wie diese in der kern.log von einem meiner Server:

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

Ich würde gerne wissen:

  1. Was genau bedeutet diese Nachricht?
  2. Ist auf meinem Server nicht genügend Arbeitsspeicher verfügbar?

Die Swap-Nutzung ist ziemlich niedrig (weniger als 10%), und bisher habe ich keine Prozesse bemerkt, die wegen Speichermangels beendet werden.

Zusätzliche Information:

  • Der Server ist eine Xen-Instanz (DomU), auf der Debian 6.0 läuft
  • Es verfügt über 512 MB RAM und eine 512 MB Swap-Partition
  • Die CPU-Auslastung in der virtuellen Maschine beträgt durchschnittlich 0,25

22
2018-02-16 12:43


Ursprung




Antworten:


Debian-Fehler 666021 scheint ein Bericht über dasselbe Thema zu sein. Der Vorschlag dort ist:

#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/ Es gibt einige Diskussionen darüber, wann diese Einstellung geändert werden kann, hier wiedergegeben:

Dies weist den Kernel an, zu versuchen, jederzeit 64 MB RAM frei zu halten.   Es ist in zwei Hauptfällen nützlich:

  • Swap-less-Maschinen, bei denen der eingehende Netzwerkverkehr den Kernel nicht überwältigen soll und ein OOM erzwungen werden soll, bevor es Zeit zum Leeren hat   irgendwelche Puffer.

  • x86-Maschinen, aus dem gleichen Grund: Die x86-Architektur ermöglicht nur DMA-Übertragungen unter etwa 900 MB RAM. So kannst du enden   mit der bizarren Situation eines OOM-Fehlers mit Tonnen von RAM frei.

Ich habe diese Einstellung auf meinem 3.2.12-Gentoo x86-Rechner angewendet, bekomme aber immer noch diese Fehler.


13
2018-06-18 23:54



Dieselbe Sache kann bei bestimmten Geräten auftreten, zum Beispiel beim MPT Fusion SCSI-Controller wird empfohlen, vm.min_free_kbytes um 100 Megabyte zu halten. Oder zumindest war es daran gewöhnt, als ich diese Dinge zuletzt mit 32-Bit-Linux-Distributionen nutzen musste. Die Dinge könnten sich seitdem geändert haben. - Janne Pikkarainen


Es kann auch eine Überprüfung wert sein vm.zone_reclaim_mode: sehen http://www.kernel.org/doc/Documentation/sysctl/vm.txt und https://bugzilla.redhat.com/show_bug.cgi?id=770545


1
2017-07-21 17:50



2. Link ist "Zugriff verweigert". Können Sie bitte einen alternativen Link angeben oder erklären, wie Sie darauf zugreifen können? - Tino


Ich habe gerade diesen Fehler auf einem Lenovo NAS mit Debian 5 und Kernel 2.6.39.3 64bit durchgearbeitet.

Die Nachrichten sind informativ, obwohl sie unheimlich aussehen https://www.novell.com/support/kb/doc.php?id=7002803

Allerdings füllten sie meine sehr begrenzte Root-Partition (dieses Gerät hat eine 50 MByte große Root-Partition?!)

Die Lösung für mich war es zu reparieren vm.min_free_kbytes von 65536 bis zu 16384.

Danach hat das Betriebssystem noch 107 MB freien Speicher und 2 GB in Puffern. Dies macht keinen Sinn, aber es hat die gesamte Protokollierung gestoppt.


0
2018-06-18 05:50