summaryrefslogtreecommitdiffstats
path: root/mm/swapfile.c
diff options
context:
space:
mode:
authorKirill Korotaev2006-12-07 05:32:27 +0100
committerLinus Torvalds2006-12-07 17:39:22 +0100
commitb43a57bb4dae72e8f7232e7c821a8799eda30022 (patch)
tree4293286b44c8b11bac6a03c4ddfe75aea40aa089 /mm/swapfile.c
parent[PATCH] mlock cleanup (diff)
downloadkernel-qcow2-linux-b43a57bb4dae72e8f7232e7c821a8799eda30022.tar.gz
kernel-qcow2-linux-b43a57bb4dae72e8f7232e7c821a8799eda30022.tar.xz
kernel-qcow2-linux-b43a57bb4dae72e8f7232e7c821a8799eda30022.zip
[PATCH] OOM can panic due to processes stuck in __alloc_pages()
OOM can panic due to the processes stuck in __alloc_pages() doing infinite rebalance loop while no memory can be reclaimed. OOM killer tries to kill some processes, but unfortunetaly, rebalance label was moved by someone below the TIF_MEMDIE check, so buddy allocator doesn't see that process is OOM-killed and it can simply fail the allocation :/ Observed in reality on RHEL4(2.6.9)+OpenVZ kernel when a user doing some memory allocation tricks triggered OOM panic. Signed-off-by: Denis Lunev <den@sw.ru> Signed-off-by: Kirill Korotaev <dev@openvz.org> Cc: Nick Piggin <nickpiggin@yahoo.com.au> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
Diffstat (limited to 'mm/swapfile.c')
0 files changed, 0 insertions, 0 deletions