Introduce zero-filled page statistics to monitor the number of zero-filled pages.
Acked-by: Dan Magenheimer <dan.magenhei...@oracle.com> Signed-off-by: Wanpeng Li <liw...@linux.vnet.ibm.com> --- drivers/staging/zcache/zcache-main.c | 7 +++++++ 1 files changed, 7 insertions(+), 0 deletions(-) diff --git a/drivers/staging/zcache/zcache-main.c b/drivers/staging/zcache/zcache-main.c index ef8c960..bc7ccbb 100644 --- a/drivers/staging/zcache/zcache-main.c +++ b/drivers/staging/zcache/zcache-main.c @@ -197,6 +197,7 @@ static ssize_t zcache_eph_nonactive_puts_ignored; static ssize_t zcache_pers_nonactive_puts_ignored; static ssize_t zcache_writtenback_pages; static ssize_t zcache_outstanding_writeback_pages; +static ssize_t zcache_zero_filled_pages; #ifdef CONFIG_DEBUG_FS #include <linux/debugfs.h> @@ -258,6 +259,7 @@ static int zcache_debugfs_init(void) zdfs("outstanding_writeback_pages", S_IRUGO, root, &zcache_outstanding_writeback_pages); zdfs("writtenback_pages", S_IRUGO, root, &zcache_writtenback_pages); + zdfs("zero_filled_pages", S_IRUGO, root, &zcache_zero_filled_pages); return 0; } #undef zdebugfs @@ -327,6 +329,7 @@ void zcache_dump(void) pr_info("zcache: outstanding_writeback_pages=%zd\n", zcache_outstanding_writeback_pages); pr_info("zcache: writtenback_pages=%zd\n", zcache_writtenback_pages); + pr_info("zcache: zero_filled_pages=%zd\n", zcache_zero_filled_pages); } #endif @@ -563,6 +566,7 @@ static void *zcache_pampd_eph_create(char *data, size_t size, bool raw, kunmap_atomic(user_mem); clen = 0; zero_filled = true; + zcache_zero_filled_pages++; goto got_pampd; } kunmap_atomic(user_mem); @@ -646,6 +650,7 @@ static void *zcache_pampd_pers_create(char *data, size_t size, bool raw, kunmap_atomic(user_mem); clen = 0; zero_filled = true; + zcache_zero_filled_pages++; goto got_pampd; } kunmap_atomic(user_mem); @@ -867,6 +872,7 @@ static int zcache_pampd_get_data_and_free(char *data, size_t *sizep, bool raw, zpages = 1; if (!raw) *sizep = PAGE_SIZE; + zcache_zero_filled_pages--; goto zero_fill; } @@ -923,6 +929,7 @@ static void zcache_pampd_free(void *pampd, struct tmem_pool *pool, zero_filled = true; zsize = 0; zpages = 1; + zcache_zero_filled_pages--; } if (pampd_is_remote(pampd) && !zero_filled) { -- 1.7.7.6 -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majord...@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/