linux/arch/s390/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
..
Makefile s390/exceptions: switch to relative exception table entries 2012-09-26 15:45:10 +02:00
cmm.c s390/comments: unify copyright messages and remove file names 2012-07-20 11:15:04 +02:00
extable.c s390/exceptions: switch to relative exception table entries 2012-09-26 15:45:10 +02:00
extmem.c s390/comments: unify copyright messages and remove file names 2012-07-20 11:15:04 +02:00
fault.c readahead: fault retry breaks mmap file read random detection 2012-10-09 16:22:47 +09:00
gup.c thp, s390: thp splitting backend for s390 2012-10-09 16:22:30 +09:00
hugetlbpage.c s390/comments: unify copyright messages and remove file names 2012-07-20 11:15:04 +02:00
init.c s390/mm: mark free_initrd_mem() as __init 2012-09-26 15:45:27 +02:00
maccess.c s390/kernel: Introduce memcpy_absolute() function 2012-05-30 09:04:49 +02:00
mmap.c s390/mm: downgrade page table after fork of a 31 bit process 2012-07-26 16:24:14 +02:00
page-states.c include cleanup: Update gfp.h and slab.h includes to prepare for breaking implicit slab.h inclusion from percpu.h 2010-03-30 22:02:32 +09:00
pageattr.c [S390] sparse: fix sparse warnings about missing prototypes 2011-10-30 15:16:46 +01:00
pgtable.c thp, s390: architecture backend for thp on s390 2012-10-09 16:22:31 +09:00
vmem.c s390: enable large page support with CONFIG_DEBUG_PAGEALLOC 2012-09-26 15:44:50 +02:00