Skip to content

Commit

Permalink
mm/zsmalloc.c: fix the migrated zspage statistics.
Browse files Browse the repository at this point in the history
When zspage is migrated to the other zone, the zone page state should be
updated as well, otherwise the NR_ZSPAGE for each zone shows wrong
counts including proc/zoneinfo in practice.

Link: http://lkml.kernel.org/r/[email protected]
Fixes: 91537fe ("mm: add NR_ZSMALLOC to vmstat")
Signed-off-by: Chanho Min <[email protected]>
Signed-off-by: Jinsuk Choi <[email protected]>
Reviewed-by: Sergey Senozhatsky <[email protected]>
Acked-by: Minchan Kim <[email protected]>
Cc: <[email protected]>        [4.9+]
Signed-off-by: Andrew Morton <[email protected]>
Signed-off-by: Linus Torvalds <[email protected]>
  • Loading branch information
Chanho Min authored and torvalds committed Jan 4, 2020
1 parent feee6b2 commit ac8f05d
Showing 1 changed file with 5 additions and 0 deletions.
5 changes: 5 additions & 0 deletions mm/zsmalloc.c
Original file line number Diff line number Diff line change
Expand Up @@ -2069,6 +2069,11 @@ static int zs_page_migrate(struct address_space *mapping, struct page *newpage,
zs_pool_dec_isolated(pool);
}

if (page_zone(newpage) != page_zone(page)) {
dec_zone_page_state(page, NR_ZSPAGES);
inc_zone_page_state(newpage, NR_ZSPAGES);
}

reset_page(page);
put_page(page);
page = newpage;
Expand Down

0 comments on commit ac8f05d

Please sign in to comment.