How to verify zswap running?

dmesg | grep zswap

That should be all you need to know if it's running. You should see a message along the lines of:

[    1.241302] zswap: loading zswap
[    1.241306] zswap: using zbud pool
[    1.241310] zswap: using lzo compressor

You can see what it's doing with the following:

$ sudo grep -R . /sys/kernel/debug/zswap
/sys/kernel/debug/zswap/stored_pages:0
/sys/kernel/debug/zswap/pool_total_size:0
/sys/kernel/debug/zswap/duplicate_entry:0
/sys/kernel/debug/zswap/written_back_pages:0
/sys/kernel/debug/zswap/reject_compress_poor:0
/sys/kernel/debug/zswap/reject_kmemcache_fail:0
/sys/kernel/debug/zswap/reject_alloc_fail:0
/sys/kernel/debug/zswap/reject_reclaim_fail:0
/sys/kernel/debug/zswap/pool_limit_hit:0

The key parameters to look out for are stored_pages which is the number of compressed pages and written_back_pages which is the number of pages which have been written out to the swap file.


Shell expansion is a weird thing sometimes. grep fortunately have a recursive option so to simplify it:

sudo grep -r . /sys/kernel/debug/zswap