Files
android_kernel_fxtec_sm6115/include/linux
KAMEZAWA Hiroyuki 4365a5676f oom-kill: fix NUMA constraint check with nodemask
Fix node-oriented allocation handling in oom-kill.c I myself think of this
as a bugfix not as an ehnancement.

In these days, things are changed as
  - alloc_pages() eats nodemask as its arguments, __alloc_pages_nodemask().
  - mempolicy don't maintain its own private zonelists.
  (And cpuset doesn't use nodemask for __alloc_pages_nodemask())

So, current oom-killer's check function is wrong.

This patch does
  - check nodemask, if nodemask && nodemask doesn't cover all
    node_states[N_HIGH_MEMORY], this is CONSTRAINT_MEMORY_POLICY.
  - Scan all zonelist under nodemask, if it hits cpuset's wall
    this faiulre is from cpuset.
And
  - modifies the caller of out_of_memory not to call oom if __GFP_THISNODE.
    This doesn't change "current" behavior. If callers use __GFP_THISNODE
    it should handle "page allocation failure" by itself.

  - handle __GFP_NOFAIL+__GFP_THISNODE path.
    This is something like a FIXME but this gfpmask is not used now.

[akpm@linux-foundation.org: coding-style fixes]
Signed-off-by: KAMEZAWA Hiroyuki <kamezawa.hioryu@jp.fujitsu.com>
Acked-by: David Rientjes <rientjes@google.com>
Cc: Daisuke Nishimura <nishimura@mxp.nes.nec.co.jp>
Cc: KOSAKI Motohiro <kosaki.motohiro@jp.fujitsu.com>
Cc: Christoph Lameter <cl@linux-foundation.org>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
2009-12-16 07:19:57 -08:00
..
2009-12-14 00:26:26 +01:00
2009-12-06 21:10:56 +01:00
2009-12-10 23:52:01 +00:00
2009-12-15 08:53:33 -08:00
2009-12-10 15:02:53 +01:00
2009-12-10 15:02:50 +01:00
2009-12-14 23:55:34 +01:00
2009-12-14 21:17:29 +01:00
2009-12-11 15:18:03 -08:00
2009-12-15 08:53:20 -08:00
2009-12-09 17:14:38 +11:00
2009-12-15 08:53:36 -08:00
2009-12-15 08:53:20 -08:00
2009-12-09 12:12:44 +02:00
2009-12-15 08:53:17 -08:00
2009-12-15 08:53:25 -08:00
2009-12-15 08:53:20 -08:00
2009-12-15 08:53:16 -08:00
2009-12-11 06:44:29 -05:00