mm, thp: allow fallback when pte_alloc_one() fails for huge pmd
authorDavid Rientjes <rientjes@google.com>
Tue, 29 May 2012 22:06:17 +0000 (15:06 -0700)
committerLinus Torvalds <torvalds@linux-foundation.org>
Tue, 29 May 2012 23:22:19 +0000 (16:22 -0700)
commitedad9d2c337d43278a9d5aeb0ed531c2e838f8a6
tree9cd9aba0647d5d1eedd602451cd34f2d514fd30d
parentaa2e878efa7949c8502c9760f92835222714f090
mm, thp: allow fallback when pte_alloc_one() fails for huge pmd

The transparent hugepages feature is careful to not invoke the oom
killer when a hugepage cannot be allocated.

pte_alloc_one() failing in __do_huge_pmd_anonymous_page(), however,
currently results in VM_FAULT_OOM which invokes the pagefault oom killer
to kill a memory-hogging task.

This is unnecessary since it's possible to drop the reference to the
hugepage and fallback to allocating a small page.

Signed-off-by: David Rientjes <rientjes@google.com>
Cc: Andrea Arcangeli <aarcange@redhat.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
mm/huge_memory.c