Since zswap now writes back pages from memcg-specific LRUs, we now need a
new stat to show writebacks count for each memcg.
[nphamcs@gmail.com: rename ZSWP_WB to ZSWPWB]
Link: https://lkml.kernel.org/r/20231205193307.2432803-1-nphamcs@gmail.com
Link: https://lkml.kernel.org/r/20231130194023.4102148-5-nphamcs@gmail.com
Suggested-by: Nhat Pham <nphamcs@gmail.com>
Signed-off-by: Domenico Cerasuolo <cerasuolodomenico@gmail.com>
Signed-off-by: Nhat Pham <nphamcs@gmail.com>
Tested-by: Bagas Sanjaya <bagasdotme@gmail.com>
Reviewed-by: Yosry Ahmed <yosryahmed@google.com>
Cc: Chris Li <chrisl@kernel.org>
Cc: Dan Streetman <ddstreet@ieee.org>
Cc: Johannes Weiner <hannes@cmpxchg.org>
Cc: Michal Hocko <mhocko@kernel.org>
Cc: Muchun Song <muchun.song@linux.dev>
Cc: Roman Gushchin <roman.gushchin@linux.dev>
Cc: Seth Jennings <sjenning@redhat.com>
Cc: Shakeel Butt <shakeelb@google.com>
Cc: Shuah Khan <shuah@kernel.org>
Cc: Vitaly Wool <vitaly.wool@konsulko.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
 
 #ifdef CONFIG_ZSWAP
                ZSWPIN,
                ZSWPOUT,
+               ZSWPWB,
 #endif
 #ifdef CONFIG_X86
                DIRECT_MAP_LEVEL2_SPLIT,
 
 #if defined(CONFIG_MEMCG_KMEM) && defined(CONFIG_ZSWAP)
        ZSWPIN,
        ZSWPOUT,
+       ZSWPWB,
 #endif
 #ifdef CONFIG_TRANSPARENT_HUGEPAGE
        THP_FAULT_ALLOC,
 
 #ifdef CONFIG_ZSWAP
        "zswpin",
        "zswpout",
+       "zswpwb",
 #endif
 #ifdef CONFIG_X86
        "direct_map_level2_splits",
 
        }
        zswap_written_back_pages++;
 
+       if (entry->objcg)
+               count_objcg_event(entry->objcg, ZSWPWB);
+
+       count_vm_event(ZSWPWB);
        /*
         * Writeback started successfully, the page now belongs to the
         * swapcache. Drop the entry from zswap - unless invalidate already