kernel-aes67/mm
Miklos Szeredi 3ee6dafc67 only allow nonlinear vmas for ram backed filesystems
page_mkclean() doesn't re-protect ptes for non-linear mappings, so a later
re-dirty through such a mapping will not generate a fault, PG_dirty will
not reflect the dirty state and the dirty count will be skewed.  This
implies that msync() is also currently broken for nonlinear mappings.

The easiest solution is to emulate remap_file_pages on non-linear mappings
with simple mmap() for non ram-backed filesystems.  Applications continue
to work (albeit slower), as long as the number of remappings remain below
the maximum vma count.

However all currently known real uses of non-linear mappings are for ram
backed filesystems, which this patch doesn't affect.

Signed-off-by: Miklos Szeredi <mszeredi@suse.cz>
Acked-by: Peter Zijlstra <a.p.zijlstra@chello.nl>
Cc: William Lee Irwin III <wli@holomorphy.com>
Cc: Nick Piggin <nickpiggin@yahoo.com.au>
Cc: Ingo Molnar <mingo@elte.hu>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
2007-07-19 10:04:41 -07:00
..
allocpercpu.c
backing-dev.c
bootmem.c
bounce.c
fadvise.c
filemap_xip.c mm: fault feedback #2 2007-07-19 10:04:41 -07:00
filemap.c mm: fault feedback #2 2007-07-19 10:04:41 -07:00
filemap.h
fremap.c only allow nonlinear vmas for ram backed filesystems 2007-07-19 10:04:41 -07:00
highmem.c
hugetlb.c mm: fault feedback #2 2007-07-19 10:04:41 -07:00
internal.h
Kconfig
madvise.c
Makefile
memory_hotplug.c
memory.c mm: fix clear_page_dirty_for_io vs fault race 2007-07-19 10:04:41 -07:00
mempolicy.c
mempool.c
migrate.c
mincore.c
mlock.c
mmap.c mm: merge populate and nopage into fault (fixes nonlinear) 2007-07-19 10:04:41 -07:00
mmzone.c
mprotect.c
mremap.c
msync.c
nommu.c mm: fault feedback #1 2007-07-19 10:04:41 -07:00
oom_kill.c
page_alloc.c
page_io.c
page-writeback.c mm: fix clear_page_dirty_for_io vs fault race 2007-07-19 10:04:41 -07:00
pdflush.c
prio_tree.c
quicklist.c
readahead.c
rmap.c mm: merge populate and nopage into fault (fixes nonlinear) 2007-07-19 10:04:41 -07:00
shmem_acl.c
shmem.c mm: fault feedback #2 2007-07-19 10:04:41 -07:00
slab.c
slob.c
slub.c
sparse.c
swap_state.c
swap.c
swapfile.c
thrash.c
tiny-shmem.c
truncate.c mm: merge populate and nopage into fault (fixes nonlinear) 2007-07-19 10:04:41 -07:00
util.c add kstrndup 2007-07-18 08:47:39 -07:00
vmalloc.c Allocate and free vmalloc areas 2007-07-18 08:47:41 -07:00
vmscan.c
vmstat.c