• Vlastimil Babka's avatar
    mm: fix swapped Movable and Reclaimable in /proc/pagetypeinfo · 475a2f90
    Vlastimil Babka authored
    Commit 016c13da ("mm, page_alloc: use masks and shifts when
    converting GFP flags to migrate types") has swapped MIGRATE_MOVABLE and
    MIGRATE_RECLAIMABLE in the enum definition.  However, migratetype_names
    wasn't updated to reflect that.
    
    As a result, the file /proc/pagetypeinfo shows the counts for Movable as
    Reclaimable and vice versa.
    
    Additionally, commit 0aaa29a5 ("mm, page_alloc: reserve pageblocks
    for high-order atomic allocations on demand") introduced
    MIGRATE_HIGHATOMIC, but did not add a letter to distinguish it into
    show_migration_types(), so it doesn't appear in the listing of free
    areas during page alloc failures or oom kills.
    
    This patch fixes both problems.  The atomic reserves will show with a
    letter 'H' in the free areas listings.
    
    Fixes: 016c13da ("mm, page_alloc: use masks and shifts when converting GFP flags to migrate types")
    Fixes: 0aaa29a5 ("mm, page_alloc: reserve pageblocks for high-order atomic allocations on demand")
    Signed-off-by: default avatarVlastimil Babka <vbabka@suse.cz>
    Acked-by: default avatarMel Gorman <mgorman@suse.de>
    Signed-off-by: default avatarAndrew Morton <akpm@linux-foundation.org>
    Signed-off-by: default avatarLinus Torvalds <torvalds@linux-foundation.org>
    475a2f90
page_alloc.c 189 KB