mm: memcg: add swapcache stat for memcg v2
[platform/kernel/linux-starfive.git] / drivers / base / node.c
index d02d86a..f449dbb 100644 (file)
@@ -372,14 +372,19 @@ static ssize_t node_read_meminfo(struct device *dev,
        struct pglist_data *pgdat = NODE_DATA(nid);
        struct sysinfo i;
        unsigned long sreclaimable, sunreclaimable;
+       unsigned long swapcached = 0;
 
        si_meminfo_node(&i, nid);
        sreclaimable = node_page_state_pages(pgdat, NR_SLAB_RECLAIMABLE_B);
        sunreclaimable = node_page_state_pages(pgdat, NR_SLAB_UNRECLAIMABLE_B);
+#ifdef CONFIG_SWAP
+       swapcached = node_page_state_pages(pgdat, NR_SWAPCACHE);
+#endif
        len = sysfs_emit_at(buf, len,
                            "Node %d MemTotal:       %8lu kB\n"
                            "Node %d MemFree:        %8lu kB\n"
                            "Node %d MemUsed:        %8lu kB\n"
+                           "Node %d SwapCached:     %8lu kB\n"
                            "Node %d Active:         %8lu kB\n"
                            "Node %d Inactive:       %8lu kB\n"
                            "Node %d Active(anon):   %8lu kB\n"
@@ -391,6 +396,7 @@ static ssize_t node_read_meminfo(struct device *dev,
                            nid, K(i.totalram),
                            nid, K(i.freeram),
                            nid, K(i.totalram - i.freeram),
+                           nid, K(swapcached),
                            nid, K(node_page_state(pgdat, NR_ACTIVE_ANON) +
                                   node_page_state(pgdat, NR_ACTIVE_FILE)),
                            nid, K(node_page_state(pgdat, NR_INACTIVE_ANON) +