linux-sg2042/arch/um
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
..
drivers Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/vfs 2012-10-02 20:25:04 -07:00
include um: Preinclude include/linux/kern_levels.h 2012-09-27 20:20:09 +02:00
kernel readahead: fault retry breaks mmap file read random detection 2012-10-09 16:22:47 +09:00
os-Linux uml: fix compile error in deliver_alarm() 2012-09-05 19:40:59 -07:00
scripts um: Preinclude include/linux/kern_levels.h 2012-09-27 20:20:09 +02:00
sys-ia64 uml: remove useless comments 2009-04-01 08:59:17 -07:00
sys-ppc um: change to new flag variables 2011-03-17 14:02:57 +01:00
.gitignore um: tell git to ignore generated files 2010-03-06 11:26:28 -08:00
Kconfig.char um: clean Kconfig up a bit 2011-11-02 14:15:29 +01:00
Kconfig.common Kconfig: clean up the long arch list for the UID16 config option 2012-10-09 16:22:13 +09:00
Kconfig.debug lib: consolidate DEBUG_STACK_USAGE option 2011-05-25 08:39:54 -07:00
Kconfig.net Fix common misspellings 2011-03-31 11:26:23 -03:00
Kconfig.rest um: switch to use of drivers/Kconfig 2011-11-02 14:15:41 +01:00
Kconfig.um timers: Fixup the Kconfig consolidation fallout 2012-05-21 23:43:46 +02:00
Makefile UAPI: Partition the header include path sets and add uapi/ header directories 2012-10-02 18:01:26 +01:00
Makefile-ia64
Makefile-os-Linux x86, um: get rid of arch/um/os symlink 2008-10-22 22:55:22 -07:00
Makefile-ppc
Makefile-skas
defconfig Merge branch 'for-linus-3.6-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/rw/uml 2012-08-01 16:45:02 -07:00