Michel Lespinasse ff6a6da60b mm: accelerate munlock() treatment of THP pages
munlock_vma_pages_range() was always incrementing addresses by PAGE_SIZE
at a time.  When munlocking THP pages (or the huge zero page), this
resulted in taking the mm->page_table_lock 512 times in a row.

We can do better by making use of the page_mask returned by
follow_page_mask (for the huge zero page case), or the size of the page
munlock_vma_page() operated on (for the true THP page case).

Signed-off-by: Michel Lespinasse <walken@google.com>
Cc: Andrea Arcangeli <aarcange@redhat.com>
Cc: Rik van Riel <riel@redhat.com>
Cc: Mel Gorman <mgorman@suse.de>
Cc: Hugh Dickins <hughd@google.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
2013-02-27 19:10:09 -08:00
..
2012-01-03 22:54:56 -05:00
2013-02-23 17:50:21 -08:00
2013-02-23 17:50:24 -08:00
2013-02-23 17:50:21 -08:00
2013-02-23 17:50:18 -08:00
2012-06-20 14:39:36 -07:00
2012-12-18 15:02:14 -08:00
2012-12-18 15:02:14 -08:00
2013-02-23 17:50:18 -08:00
2012-12-20 18:46:29 -05:00
2013-02-23 17:50:21 -08:00