OpenCloudOS-Kernel/arch/um/kernel
Nick Piggin 1c0fe6e3bd mm: invoke oom-killer from page fault
Rather than have the pagefault handler kill a process directly if it gets
a VM_FAULT_OOM, have it call into the OOM killer.

With increasingly sophisticated oom behaviour (cpusets, memory cgroups,
oom killing throttling, oom priority adjustment or selective disabling,
panic on oom, etc), it's silly to unconditionally kill the faulting
process at page fault time.  Create a hook for pagefault oom path to call
into instead.

Only converted x86 and uml so far.

[akpm@linux-foundation.org: make __out_of_memory() static]
[akpm@linux-foundation.org: fix comment]
Signed-off-by: Nick Piggin <npiggin@suse.de>
Cc: Jeff Dike <jdike@addtoit.com>
Acked-by: Ingo Molnar <mingo@elte.hu>
Cc: Thomas Gleixner <tglx@linutronix.de>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
2009-01-06 15:58:58 -08:00
..
skas uml: fix mm_context memory leak 2008-02-08 09:22:43 -08:00
Makefile uml: style fixes pass 1 2007-10-16 09:43:05 -07:00
asm-offsets.c [PATCH] uml: fix missing KBUILD_BASENAME 2006-01-11 18:42:09 -08:00
config.c.in Linux-2.6.12-rc2 2005-04-16 15:20:36 -07:00
dyn.lds.S uml: use PAGE_SIZE in linker scripts 2008-05-13 08:02:22 -07:00
exec.c x86, um: get rid of uml unistd.h 2008-10-22 22:55:21 -07:00
exitcode.c proc: remove proc_root from drivers 2008-04-29 08:06:18 -07:00
gmon_syms.c uml: style fixes in arch/um/kernel 2008-02-05 09:44:30 -08:00
gprof_syms.c uml: style fixes in arch/um/kernel 2008-02-05 09:44:30 -08:00
init_task.c take init_fs to saner place 2008-12-31 18:07:42 -05:00
initrd.c uml: fix initrd printk 2008-02-23 17:12:13 -08:00
internal.h x86, um: get rid of uml unistd.h 2008-10-22 22:55:21 -07:00
irq.c arch/um/kernel/irq.c: clean up some functions 2008-07-24 10:47:24 -07:00
ksyms.c arch/um/kernel/mem.c: remove arch_validate() 2008-07-24 10:47:24 -07:00
mem.c um: use generic show_mem() 2008-07-26 12:00:10 -07:00
physmem.c UML: make several more things static 2008-07-24 10:47:24 -07:00
process.c nohz: prevent tick stop outside of the idle loop 2008-07-18 18:10:28 +02:00
ptrace.c UML: make several more things static 2008-07-24 10:47:24 -07:00
reboot.c uml: style fixes in arch/um/kernel 2008-02-05 09:44:30 -08:00
sigio.c uml: style fixes in arch/um/kernel 2008-02-05 09:44:30 -08:00
signal.c x86, um: sanitize uml sigcontext.h uses 2008-10-22 22:55:20 -07:00
smp.c cpumask: centralize cpu_online_map and cpu_possible_map 2008-12-13 21:19:41 +10:30
syscall.c x86, um: get rid of uml unistd.h 2008-10-22 22:55:21 -07:00
sysrq.c uml: style fixes in arch/um/kernel 2008-02-05 09:44:30 -08:00
time.c cpumask: convert struct clock_event_device to cpumask pointers. 2008-12-13 21:20:26 +10:30
tlb.c uml: style fixes in arch/um/kernel 2008-02-05 09:44:30 -08:00
trap.c mm: invoke oom-killer from page fault 2009-01-06 15:58:58 -08:00
uaccess.c UML: make several more things static 2008-07-24 10:47:24 -07:00
um_arch.c uml: deal with inaccessible address space start 2008-06-06 11:29:10 -07:00
umid.c uml: style fixes in arch/um/kernel 2008-02-05 09:44:30 -08:00
uml.lds.S uml: use PAGE_SIZE in linker scripts 2008-05-13 08:02:22 -07:00
vmlinux.lds.S [PATCH] uml: tidy biarch gcc support 2006-07-14 21:53:52 -07:00