HWPOISON: Add unpoisoning support
Wu Fengguang authored
The unpoisoning interface is useful for stress testing tools to
reclaim poisoned pages (to prevent OOM)

There is no hardware level unpoisioning, so this
cannot be used for real memory errors, only for software injected errors.

Note that it may leak pages silently - those who have been removed from
LRU cache, but not isolated from page cache/swap cache at hwpoison time.
Especially the stress test of dirty swap cache pages shall reboot system
before exhausting memory.

AK: Fix comments, add documentation, add printks, rename symbol
Signed-off-by: default avatarWu Fengguang <fengguang.wu@intel.com>
Signed-off-by: default avatarAndi Kleen <ak@linux.intel.com>
847ce401
Name Last commit Last update
..
Kconfig ksm: remove unswappable max_kernel_pages
Kconfig.debug trivial: improve help text for mm debug config options
Makefile percpu: kill legacy percpu allocator
backing-dev.c flusher: Fix PF_FROZEN race
bootmem.c mm/bootmem.c: properly __init-annotate helper functions
bounce.c block: remove some includings of blktrace_api.h
debug-pagealloc.c generic debug pagealloc
dmapool.c dmapools: protect page_list walk in show_pools()
fadvise.c readahead: move max_sane_readahead() calls into force_page_cache_readahead()
failslab.c kmemtrace, mm: fix slab.h dependency problem in mm/failslab.c
filemap.c kill wait_on_page_writeback_range
filemap_xip.c const: mark struct vm_struct_operations
fremap.c Do not account for the address space used by hugetlbfs using VM_ACCOUNT
highmem.c highmem: Fix debug_kmap_atomic() to also handle KM_IRQ_PTE, KM_NMI, and KM_NMI_PTE
hugetlb.c hugetlb: abort a hugepage pool resize if a signal is pending
hwpoison-inject.c HWPOISON: Add unpoisoning support
init-mm.c mm: consolidate init_mm definition
internal.h HWPOISON: detect free buddy pages explicitly
kmemcheck.c kmemcheck: add hooks for the page allocator
kmemleak-test.c percpu: clean up percpu variable definitions
kmemleak.c tree-wide: fix typos "aquire" -> "acquire", "cumsumed" -> "consumed"
ksm.c ksm: remove unswappable max_kernel_pages
maccess.c [S390] maccess: add weak attribute to probe_kernel_write
madvise.c HWPOISON: Turn ref argument into flags argument
memcontrol.c ksm: mem cgroup charge swapin copy
memory-failure.c
memory.c
memory_hotplug.c
mempolicy.c
mempool.c
migrate.c
mincore.c
mlock.c
mm_init.c
mmap.c
mmu_context.c
mmu_notifier.c
mmzone.c
mprotect.c
mremap.c
msync.c
nommu.c
oom_kill.c
page-writeback.c
page_alloc.c
page_cgroup.c
page_io.c
page_isolation.c
pagewalk.c
percpu.c
prio_tree.c
quicklist.c
readahead.c
rmap.c
shmem.c
shmem_acl.c
slab.c
slob.c
slub.c
sparse-vmemmap.c
sparse.c
swap.c
swap_state.c
swapfile.c
thrash.c
truncate.c
util.c
vmalloc.c
vmscan.c
vmstat.c