This patch add pgvolatile vmstat so admin can see how many of volatile pages are discarded by VM until now. Signed-off-by: Minchan Kim <minchan@xxxxxxxxxx> --- include/linux/vm_event_item.h | 3 +++ mm/mvolatile.c | 1 + mm/vmstat.c | 3 +++ 3 files changed, 7 insertions(+) diff --git a/include/linux/vm_event_item.h b/include/linux/vm_event_item.h index 3d31145..721d096 100644 --- a/include/linux/vm_event_item.h +++ b/include/linux/vm_event_item.h @@ -25,6 +25,9 @@ enum vm_event_item { PGPGIN, PGPGOUT, PSWPIN, PSWPOUT, FOR_ALL_ZONES(PGALLOC), PGFREE, PGACTIVATE, PGDEACTIVATE, PGFAULT, PGMAJFAULT, +#ifdef CONFIG_VOLATILE_PAGE + PGVOLATILE, +#endif FOR_ALL_ZONES(PGREFILL), FOR_ALL_ZONES(PGSTEAL_KSWAPD), FOR_ALL_ZONES(PGSTEAL_DIRECT), diff --git a/mm/mvolatile.c b/mm/mvolatile.c index 6bc9f7e..c66c3bc 100644 --- a/mm/mvolatile.c +++ b/mm/mvolatile.c @@ -201,6 +201,7 @@ int discard_volatile_page(struct page *page, enum ttu_flags ttu_flags) if (try_to_volatile_page(page, ttu_flags)) { if (page_freeze_refs(page, 1)) { unlock_page(page); + count_vm_event(PGVOLATILE); return 1; } } diff --git a/mm/vmstat.c b/mm/vmstat.c index c737057..3d08e1a 100644 --- a/mm/vmstat.c +++ b/mm/vmstat.c @@ -753,6 +753,9 @@ const char * const vmstat_text[] = { "pgfault", "pgmajfault", +#ifdef CONFIG_VOLATILE_PAGE + "pgvolatile", +#endif TEXTS_FOR_ZONES("pgrefill") TEXTS_FOR_ZONES("pgsteal_kswapd") TEXTS_FOR_ZONES("pgsteal_direct") -- 1.7.9.5 -- To unsubscribe, send a message with 'unsubscribe linux-mm' in the body to majordomo@xxxxxxxxx. For more info on Linux MM, see: http://www.linux-mm.org/ . Don't email: <a href=mailto:"dont@xxxxxxxxx"> email@xxxxxxxxx </a>