• M
    mm: numa: add migrated transhuge pages to LRU the same way as base pages · 11de9927
    Mel Gorman 提交于
    Migration of misplaced transhuge pages uses page_add_new_anon_rmap() when
    putting the page back as it avoided an atomic operations and added the new
    page to the correct LRU.  A side-effect is that the page gets marked
    activated as part of the migration meaning that transhuge and base pages
    are treated differently from an aging perspective than base page
    migration.
    
    This patch uses page_add_anon_rmap() and putback_lru_page() on completion
    of a transhuge migration similar to base page migration.  It would require
    fewer atomic operations to use lru_cache_add without taking an additional
    reference to the page.  The downside would be that it's still different to
    base page migration and unevictable pages may be added to the wrong LRU
    for cleaning up later.  Testing of the usual workloads did not show any
    adverse impact to the change.
    Signed-off-by: NMel Gorman <mgorman@suse.de>
    Cc: Rik van Riel <riel@redhat.com>
    Cc: Sasha Levin <sasha.levin@oracle.com>
    Acked-by: NHugh Dickins <hughd@google.com>
    Signed-off-by: NAndrew Morton <akpm@linux-foundation.org>
    Signed-off-by: NLinus Torvalds <torvalds@linux-foundation.org>
    11de9927
migrate.c 49.1 KB