Gitweb: http://git.kernel.org/git/?p=linux/kernel/git/torvalds/linux-2.6.git;a=commit;h=ba470d...
Commit: ba470de43188cdbff795b5da43a1474523c6c2fb
Parent: 8edb08caf68184fb170f4f69c7445929e199eaea
Author: Rik van Riel <riel@redhat.com>
AuthorDate: Sat Oct 18 20:26:50 2008 -0700
Committer: Linus Torvalds <torvalds@linux-foundation.org>
CommitDate: Mon Oct 20 08:52:31 2008 -0700
mmap: handle mlocked pages during map, remap, unmap
Originally by Nick Piggin <npiggin@suse.de>
Remove mlocked pages from the LRU using "unevictable infrastructure"
during mmap(), munmap(), mremap() and truncate(). Try to move back to
normal LRU lists on munmap() when last mlocked mapping removed. Remove
PageMlocked() status when page truncated from file.
[akpm@linux-foundation.org: cleanup]
[kamezawa.hiroyu@jp.fujitsu.com: fix double unlock_page()]
[kosaki.motohiro@jp.fujitsu.com: split LRU: munlock rework]
[lee.schermerhorn@hp.com: mlock: fix __mlock_vma_pages_range comment block]
[akpm@linux-foundation.org: remove bogus kerneldoc token]
Signed-off-by: Nick Piggin <npiggin@suse.de>
Signed-off-by: Lee Schermerhorn <lee.schermerhorn@hp.com>
Signed-off-by: Rik van Riel <riel@redhat.com>
Signed-off-by: KOSAKI Motohiro <kosaki.motohiro@jp.fujitsu.com>
Signed-off-by: KAMEZAWA Hiroyuki <kamewzawa.hiroyu@jp.fujitsu.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
---
mm/fremap.c | 27 ++++++--
mm/internal.h | 9 ++-
mm/mlock.c | 221 +++++++++++++++++++++++----------------------------------
mm/mmap.c | 71 +++++++++++++-----
mm/mremap.c | 8 ++-
mm/truncate.c | 4 +
6 files changed, 180 insertions(+), 160 deletions(-)
diff --git a/mm/fremap.c b/mm/fremap.c
index 7881638..7d12ca7 100644
--- a/mm/fremap.c
+++ b/mm/fremap.c
@@ -21,6 +21,8 @@
#include ...