mm: Make task in balance_dirty_pages() killable
Jan Kara authored
There is no reason why task in balance_dirty_pages() shouldn't be killable
and it helps in recovering from some error conditions (like when filesystem
goes in error state and cannot accept writeback anymore but we still want to
kill processes using it to be able to unmount it).

There will be follow up patches to further abort the generic_perform_write()
and other filesystem write loops, to avoid large write + SIGKILL combination
exceeding the dirty limit and possibly strange OOM.
Reported-by: default avatarKazuya Mio <k-mio@sx.jp.nec.com>
Tested-by: default avatarKazuya Mio <k-mio@sx.jp.nec.com>
Reviewed-by: default avatarNeil Brown <neilb@suse.de>
Reviewed-by: default avatarKOSAKI Motohiro <kosaki.motohiro@jp.fujitsu.com>
Signed-off-by: default avatarJan Kara <jack@suse.cz>
Signed-off-by: default avatarWu Fengguang <fengguang.wu@intel.com>
499d05ec
Name Last commit Last update
..
Kconfig memblock: add NO_BOOTMEM config symbol
Kconfig.debug mm: debug-pagealloc: fix kconfig dependency warning
Makefile Cross Memory Attach
backing-dev.c Merge branch 'writeback-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/wfg/linux
bootmem.c mm: Map most files to use export.h instead of module.h
bounce.c Merge branch 'modsplit-Oct31_2011' of git://git.kernel.org/pub/scm/linux/kernel/git/paulg/linux
cleancache.c mm: cleancache core ops functions and config
compaction.c mm: compaction: make compact_zone_order() static
debug-pagealloc.c debug-pagealloc: add support for highmem pages
dmapool.c mm: fix implicit stat.h usage in dmapool.c
fadvise.c readahead: introduce FMODE_RANDOM for POSIX_FADV_RANDOM
failslab.c fault-injection: add ability to export fault_attr in arbitrary directory
filemap.c mm: Map most files to use export.h instead of module.h
filemap_xip.c mm: Map most files to use export.h instead of module.h
fremap.c mm: delete various needless include <linux/module.h>
highmem.c Merge branch 'modsplit-Oct31_2011' of git://git.kernel.org/pub/scm/linux/kernel/git/paulg/linux
huge_memory.c mm: thp: tail page refcounting fix
hugetlb.c hugetlb: release pages in the error path of hugetlb_cow()
hwpoison-inject.c Fix common misspellings
init-mm.c atomic: use <linux/atomic.h>
internal.h mm: thp: tail page refcounting fix
kmemcheck.c kmemcheck: add hooks for the page allocator
kmemleak-test.c kmemleak: remove memset by using kzalloc
kmemleak.c mm: Map most files to use export.h instead of module.h
ksm.c oom: fix race while temporarily setting current's oom_score_adj
maccess.c mm: Map most files to use export.h instead of module.h
madvise.c fs: kill i_alloc_sem
memblock.c mm/memblock.c: quiet sparse noise
memcontrol.c Merge branch 'modsplit-Oct31_2011' of git://git.kernel.org/pub/scm/linux/kernel/git/paulg/linux
memory-failure.c Merge branch 'modsplit-Oct31_2011' of git://git.kernel.org/pub/scm/linux/kernel/git/paulg/linux
memory.c Merge branch 'modsplit-Oct31_2011' of git://git.kernel.org/pub/scm/linux/kernel/git/paulg/linux
memory_hotplug.c mm: Map most files to use export.h instead of module.h
mempolicy.c Merge branch 'modsplit-Oct31_2011' of git://git.kernel.org/pub/scm/linux/kernel/git/paulg/linux
mempool.c mm: Map most files to use export.h instead of module.h
migrate.c Merge branch 'modsplit-Oct31_2011' of git://git.kernel.org/pub/scm/linux/kernel/git/paulg/linux
mincore.c mm: clarify the radix_tree exceptional cases
mlock.c Merge branch 'modsplit-Oct31_2011' of git://git.kernel.org/pub/scm/linux/kernel/git/paulg/linux
mm_init.c mm: Map most files to use export.h instead of module.h
mmap.c Merge branch 'modsplit-Oct31_2011' of git://git.kernel.org/pub/scm/linux/kernel/git/paulg/linux
mmu_context.c mm: Map most files to use export.h instead of module.h
mmu_notifier.c mm: Map most files to use export.h instead of module.h
mmzone.c mm: delete various needless include <linux/module.h>
mprotect.c thp: mprotect: transparent huge page support
mremap.c thp: mremap support and TLB optimization
msync.c sanitize vfs_fsync calling conventions
nobootmem.c mm: Map most files to use export.h instead of module.h
nommu.c mm: Map most files to use export.h instead of module.h
oom_kill.c oom: do not kill tasks with oom_score_adj OOM_SCORE_ADJ_MIN
page-writeback.c mm: Make task in balance_dirty_pages() killable
page_alloc.c mm: neaten warn_alloc_failed
page_cgroup.c
page_io.c
page_isolation.c
pagewalk.c
percpu-km.c
percpu-vm.c
percpu.c
pgtable-generic.c
prio_tree.c
process_vm_access.c
quicklist.c
readahead.c
rmap.c
shmem.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