kernel-ark/mm
Peter Zijlstra 6ddab3b9eb [PATCH] mm: swap write failure fixup
Currently we can silently drop data if the write to swap failed.  It
usually doesn't result in data-corruption because on page-in the process
will receive SIGBUS (assuming write-failure implies read-failure).

This assumption might or might not be valid.

This patch will avoid the page being discarded after a failed write.  But
will print a warning the sysadmin _should_ take to heart, if a lot of swap
space becomes un-writeable, OOM is not far off.

Tested by making the write fail 'randomly' once every 50 writes or so.

[akpm@osdl.org: printk warning fix]
Signed-off-by: Peter Zijlstra <a.p.zijlstra@chello.nl>
Cc: Hugh Dickins <hugh@veritas.com>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Signed-off-by: Linus Torvalds <torvalds@osdl.org>
2006-09-26 08:48:48 -07:00
..
bootmem.c [PATCH] bootmem: miscellaneous coding style fixes 2006-09-26 08:48:45 -07:00
fadvise.c
filemap_xip.c
filemap.c [PATCH] mm: non syncing lock_page() 2006-09-26 08:48:48 -07:00
filemap.h
fremap.c [PATCH] mm: small cleanup of install_page() 2006-09-26 08:48:44 -07:00
highmem.c [PATCH] reduce MAX_NR_ZONES: move HIGHMEM counters into highmem.c/.h 2006-09-26 08:48:46 -07:00
hugetlb.c
internal.h [PATCH] mm: VM_BUG_ON 2006-09-26 08:48:44 -07:00
Kconfig
madvise.c
Makefile
memory_hotplug.c
memory.c [PATCH] Add kerneldocs for some functions in mm/memory.c 2006-09-26 08:48:47 -07:00
mempolicy.c [PATCH] linearly index zone->node_zonelists[] 2006-09-26 08:48:47 -07:00
mempool.c
migrate.c
mincore.c
mlock.c
mmap.c [PATCH] mm: tracking shared dirty pages 2006-09-26 08:48:44 -07:00
mmzone.c
mprotect.c [PATCH] mm: optimize the new mprotect() code a bit 2006-09-26 08:48:44 -07:00
mremap.c
msync.c [PATCH] mm: msync() cleanup 2006-09-26 08:48:45 -07:00
nommu.c
oom_kill.c [PATCH] out of memory notifier 2006-09-26 08:48:47 -07:00
page_alloc.c [PATCH] linearly index zone->node_zonelists[] 2006-09-26 08:48:47 -07:00
page_io.c [PATCH] mm: swap write failure fixup 2006-09-26 08:48:48 -07:00
page-writeback.c [PATCH] mm: non syncing lock_page() 2006-09-26 08:48:48 -07:00
pdflush.c
prio_tree.c
readahead.c
rmap.c [PATCH] mm: tracking shared dirty pages 2006-09-26 08:48:44 -07:00
shmem.c [PATCH] reduce MAX_NR_ZONES: move HIGHMEM counters into highmem.c/.h 2006-09-26 08:48:46 -07:00
slab.c [PATCH] slab: respect architecture and caller mandated alignment 2006-09-26 08:48:48 -07:00
slob.c
sparse.c
swap_state.c
swap.c [PATCH] mm/: make functions static 2006-09-26 08:48:45 -07:00
swapfile.c
thrash.c
tiny-shmem.c
truncate.c
util.c
vmalloc.c [PATCH] mm/: make functions static 2006-09-26 08:48:45 -07:00
vmscan.c [PATCH] mm: remove_mapping() safeness 2006-09-26 08:48:48 -07:00
vmstat.c [PATCH] reduce MAX_NR_ZONES: remove display of counters for unconfigured zones 2006-09-26 08:48:47 -07:00