Page allocation failure - Am I running out of memory?

Debian bug 666021 seems to be a report of this same issue. The suggestion there is:

#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/ has some discussion of when altering this setting may be useful, reproduced here:

This tells the kernel to try and keep 64MB of RAM free at all times. It’s useful in two main cases:

  • Swap-less machines, where you don’t want incoming network traffic to overwhelm the kernel and force an OOM before it has time to flush any buffers.

  • x86 machines, for the same reason: the x86 architecture only allows DMA transfers below approximately 900MB of RAM. So you can end up with the bizarre situation of an OOM error with tons of RAM free.

I applied this setting on my 3.2.12-gentoo x86 machine, but I'm still getting these errors.


It may also be worth checking vm.zone_reclaim_mode: see http://www.kernel.org/doc/Documentation/sysctl/vm.txt


I've just worked through this error on a Lenovo NAS running Debian 5 and kernel 2.6.39.3 64bit.

The messages are informational despite looking scary, according to https://www.novell.com/support/kb/doc.php?id=7002803

However, they were filling my very limited root partition (this device has a 50 MByte root partition ?!)

The fix for me was to set vm.min_free_kbytes from 65536 down to 16384.

Afterwards, the OS still has 107 MBytes free memory and 2 GB in buffers. This makes no sense, but it stopped all the logging.