Why does OOM (Out of memory) kill occur even when the overcommit_memory tunable is set to 2 ?
Issue
-
Setting overcommit_memory=2 should force the kernel to deny memory allocation requests once memory is exhausted, but OOM still occurs :
2011-04-12T06:49:13.434570+10:00 hostname kernel: Out of memory: kill process 4303 (pickup) score 16035 or a child 2011-04-12T06:49:13.434574+10:00 hostname kernel: Killed process 4303 (pickup) vsz:64140kB, anon-rss:68kB, file-rss:56kB 2011-04-12T06:49:25.412062+10:00 hostname kernel: httpd invoked oom-killer: gfp_mask=0x201da, order=0, oom_adj=-17 -
The /etc/sysctl.conf file consists :
vm.overcommit_memory = 2 vm.overcommit_ratio = 100
Environment
- Red Hat Enterprise Linux 5
- Red Hat Enterprise Linux 6
Subscriber exclusive content
A Red Hat subscription provides unlimited access to our knowledgebase of over 48,000 articles and solutions.
Welcome! Check out the Getting Started with Red Hat page for quick tours and guides for common tasks.
