Page allocation failures hitting servers where processes are memory hungry
Issue:
The kernel on RHEL 6 machines has a different behaviour compared with RHEL 5, with regards to page allocations. Many applications fail with page allocation errors when the machine has 90% or more of its memory used for filesystem cache. Traditionally in RHEL 5, the allocations would reclaim memory previously used for cache data.
Environment:
- Red Hat Enterprise Linux 6
A fix is being developed (tracked in Bugzilla 713546). A workaround also exists:
Workaround:
- Increase vm.min_free_kbytes kernel tunable to a higher value than a single allocation request.
- Change vm.zone_reclaim_mode to 1
It seems that the system fails any page allocations, if the single allocation request is higher than the min_free_kbytes kernel tunable.