linux/arch/sh/mm
Shaohua Li 45cac65b0f readahead: fault retry breaks mmap file read random detection
.fault now can retry.  The retry can break state machine of .fault.  In
filemap_fault, if page is miss, ra->mmap_miss is increased.  In the second
try, since the page is in page cache now, ra->mmap_miss is decreased.  And
these are done in one fault, so we can't detect random mmap file access.

Add a new flag to indicate .fault is tried once.  In the second try, skip
ra->mmap_miss decreasing.  The filemap_fault state machine is ok with it.

I only tested x86, didn't test other archs, but looks the change for other
archs is obvious, but who knows :)

Signed-off-by: Shaohua Li <shaohua.li@fusionio.com>
Cc: Rik van Riel <riel@redhat.com>
Cc: Wu Fengguang <fengguang.wu@intel.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
2012-10-09 16:22:47 +09:00
..
alignment.c
asids-debugfs.c
cache-debugfs.c
cache-sh2.c
cache-sh2a.c
cache-sh3.c
cache-sh4.c
cache-sh5.c
cache-sh7705.c
cache-shx3.c
cache.c
consistent.c
extable_32.c
extable_64.c
fault.c readahead: fault retry breaks mmap file read random detection 2012-10-09 16:22:47 +09:00
flush-sh4.c
gup.c
hugetlbpage.c
init.c
ioremap_fixed.c
ioremap.c
Kconfig
kmap.c
Makefile
mmap.c
nommu.c
numa.c
pgtable.c
pmb.c
sram.c
tlb-debugfs.c
tlb-pteaex.c
tlb-sh3.c
tlb-sh4.c
tlb-sh5.c
tlb-urb.c
tlbex_32.c
tlbex_64.c
tlbflush_32.c
tlbflush_64.c
uncached.c