original_kernel/mm
David Rientjes f9434ad155 memcg: give current access to memory reserves if it's trying to die
When a memcg is oom and current has already received a SIGKILL, then give
it access to memory reserves with a higher scheduling priority so that it
may quickly exit and free its memory.

This is identical to the global oom killer and is done even before
checking for panic_on_oom: a pending SIGKILL here while panic_on_oom is
selected is guaranteed to have come from userspace; the thread only needs
access to memory reserves to exit and thus we don't unnecessarily panic
the machine until the kernel has no last resort to free memory.

Signed-off-by: David Rientjes <rientjes@google.com>
Cc: Balbir Singh <balbir@linux.vnet.ibm.com>
Cc: Daisuke Nishimura <nishimura@mxp.nes.nec.co.jp>
Acked-by: KAMEZAWA Hiroyuki <kamezawa.hiroyu@jp.fujitsu.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
2011-03-23 19:46:33 -07:00
..
Kconfig
Kconfig.debug mm: debug-pagealloc: fix kconfig dependency warning 2011-03-22 17:44:02 -07:00
Makefile
backing-dev.c
bootmem.c
bounce.c
compaction.c mm: compaction: minimise the time IRQs are disabled while isolating pages for migration 2011-03-22 17:44:05 -07:00
debug-pagealloc.c
dmapool.c
fadvise.c
failslab.c
filemap.c mm: don't return 0 too early from find_get_pages() 2011-03-22 17:44:04 -07:00
filemap_xip.c
fremap.c
highmem.c
huge_memory.c mm: use __GFP_OTHER_NODE for transparent huge pages 2011-03-22 17:44:05 -07:00
hugetlb.c hugetlbfs: correct handling of negative input to /proc/sys/vm/nr_hugepages 2011-03-22 17:44:04 -07:00
hwpoison-inject.c
init-mm.c
internal.h mm: export __get_user_pages 2011-03-17 13:08:27 -03:00
kmemcheck.c
kmemleak-test.c
kmemleak.c
ksm.c mm: rename drop_anon_vma() to put_anon_vma() 2011-03-22 17:44:03 -07:00
maccess.c
madvise.c
memblock.c mm/memblock: properly handle overlaps and fix error path 2011-03-22 17:44:09 -07:00
memcontrol.c memcg: fix leak on wrong LRU with FUSE 2011-03-23 19:46:33 -07:00
memory-failure.c mm: change __remove_from_page_cache() 2011-03-22 17:44:02 -07:00
memory.c memcg: fix ugly initialization of return value is in caller 2011-03-23 19:46:22 -07:00
memory_hotplug.c
mempolicy.c mempolicy: remove redundant check in __mpol_equal() 2011-03-22 17:44:04 -07:00
mempool.c
migrate.c memcg: fix ugly initialization of return value is in caller 2011-03-23 19:46:22 -07:00
mincore.c
mlock.c
mm_init.c
mmap.c
mmu_context.c
mmu_notifier.c
mmzone.c
mprotect.c
mremap.c
msync.c
nobootmem.c
nommu.c
oom_kill.c memcg: give current access to memory reserves if it's trying to die 2011-03-23 19:46:33 -07:00
page-writeback.c writeback: make mapping->writeback_index to point to the last written page 2011-03-22 17:44:09 -07:00
page_alloc.c memcg: add memcg sanity checks at allocating and freeing pages 2011-03-23 19:46:25 -07:00
page_cgroup.c memcg: page_cgroup array is never stored on reserved pages 2011-03-23 19:46:33 -07:00
page_io.c
page_isolation.c
pagewalk.c pagewalk: only split huge pages when necessary 2011-03-22 17:44:04 -07:00
percpu-km.c
percpu-vm.c
percpu.c
pgtable-generic.c
prio_tree.c
quicklist.c
readahead.c
rmap.c mm: simplify anon_vma refcounts 2011-03-22 17:44:03 -07:00
shmem.c shmem: let shared anonymous be nonlinear again 2011-03-22 17:44:09 -07:00
slab.c mm: notifier_from_errno() cleanup 2011-03-22 17:44:01 -07:00
slob.c
slub.c slub: Add statistics for this_cmpxchg_double failures 2011-03-22 20:48:04 +02:00
sparse-vmemmap.c
sparse.c
swap.c mm: simplify code of swap.c 2011-03-22 17:44:09 -07:00
swap_state.c
swapfile.c memcg: fix ugly initialization of return value is in caller 2011-03-23 19:46:22 -07:00
thrash.c
truncate.c mm: deactivate invalidated pages 2011-03-22 17:44:03 -07:00
util.c
vmalloc.c vmalloc: remove confusing comment on vwrite() 2011-03-22 17:44:09 -07:00
vmscan.c mm: vmscan: kswapd should not free an excessive number of pages when balancing small zones 2011-03-22 17:44:04 -07:00
vmstat.c mm: add __GFP_OTHER_NODE flag 2011-03-22 17:44:05 -07:00