diff options
author | Konstantin Khlebnikov <koct9i@gmail.com> | 2014-06-04 16:10:51 -0700 |
---|---|---|
committer | Linus Torvalds <torvalds@linux-foundation.org> | 2014-06-04 16:54:12 -0700 |
commit | 3d92860f979f725a9c10c2fc26c0415a4332adbf (patch) | |
tree | a4ecf8ab9a583f6fbdc8899eba63fdb3946088ac /mm | |
parent | 226b4ccdcb6371645c25ec99b59bfde65987318c (diff) | |
download | lwn-3d92860f979f725a9c10c2fc26c0415a4332adbf.tar.gz lwn-3d92860f979f725a9c10c2fc26c0415a4332adbf.zip |
mm/rmap.c: don't call mmu_notifier_invalidate_page() during munlock
In its munmap mode, try_to_unmap_one() searches other mlocked vmas, it
never unmaps pages. There is no reason for invalidation because ptes are
left unchanged.
Signed-off-by: Konstantin Khlebnikov <koct9i@gmail.com>
Cc: Rik van Riel <riel@redhat.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
Diffstat (limited to 'mm')
-rw-r--r-- | mm/rmap.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/mm/rmap.c b/mm/rmap.c index e375ce4bd93e..ab74290d185d 100644 --- a/mm/rmap.c +++ b/mm/rmap.c @@ -1252,7 +1252,7 @@ static int try_to_unmap_one(struct page *page, struct vm_area_struct *vma, out_unmap: pte_unmap_unlock(pte, ptl); - if (ret != SWAP_FAIL) + if (ret != SWAP_FAIL && TTU_ACTION(flags) != TTU_MUNLOCK) mmu_notifier_invalidate_page(mm, address); out: return ret; |