mm: memcontrol: push down mem_cgroup_nr_lru_pages()
authorJohannes Weiner <hannes@cmpxchg.org>
Tue, 14 May 2019 00:18:08 +0000 (17:18 -0700)
committerLinus Torvalds <torvalds@linux-foundation.org>
Tue, 14 May 2019 16:47:47 +0000 (09:47 -0700)
mem_cgroup_nr_lru_pages() is just a convenience wrapper around
memcg_page_state() that takes bitmasks of lru indexes and aggregates the
counts for those.

Replace callsites where the bitmask is simple enough with direct
memcg_page_state() call(s).

Link: http://lkml.kernel.org/r/20190228163020.24100-6-hannes@cmpxchg.org
Signed-off-by: Johannes Weiner <hannes@cmpxchg.org>
Reviewed-by: Roman Gushchin <guro@fb.com>
Cc: Michal Hocko <mhocko@kernel.org>
Cc: Tejun Heo <tj@kernel.org>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
mm/memcontrol.c

index 268a0bd..d29417b 100644 (file)
@@ -1361,7 +1361,7 @@ void mem_cgroup_print_oom_meminfo(struct mem_cgroup *memcg)
 
                for (i = 0; i < NR_LRU_LISTS; i++)
                        pr_cont(" %s:%luKB", mem_cgroup_lru_names[i],
-                               K(mem_cgroup_nr_lru_pages(iter, BIT(i))));
+                               K(memcg_page_state(iter, NR_LRU_BASE + i)));
 
                pr_cont("\n");
        }
@@ -2997,8 +2997,8 @@ static void accumulate_memcg_tree(struct mem_cgroup *memcg,
                                acc->events_array ? acc->events_array[i] : i);
 
                for (i = 0; i < NR_LRU_LISTS; i++)
-                       acc->lru_pages[i] +=
-                               mem_cgroup_nr_lru_pages(mi, BIT(i));
+                       acc->lru_pages[i] += memcg_page_state(mi,
+                                                             NR_LRU_BASE + i);
        }
 }
 
@@ -3428,7 +3428,8 @@ static int memcg_stat_show(struct seq_file *m, void *v)
 
        for (i = 0; i < NR_LRU_LISTS; i++)
                seq_printf(m, "%s %lu\n", mem_cgroup_lru_names[i],
-                          mem_cgroup_nr_lru_pages(memcg, BIT(i)) * PAGE_SIZE);
+                          memcg_page_state(memcg, NR_LRU_BASE + i) *
+                          PAGE_SIZE);
 
        /* Hierarchical information */
        memory = memsw = PAGE_COUNTER_MAX;
@@ -3934,8 +3935,8 @@ void mem_cgroup_wb_stats(struct bdi_writeback *wb, unsigned long *pfilepages,
 
        /* this should eventually include NR_UNSTABLE_NFS */
        *pwriteback = memcg_exact_page_state(memcg, NR_WRITEBACK);
-       *pfilepages = mem_cgroup_nr_lru_pages(memcg, (1 << LRU_INACTIVE_FILE) |
-                                                    (1 << LRU_ACTIVE_FILE));
+       *pfilepages = memcg_exact_page_state(memcg, NR_INACTIVE_FILE) +
+                       memcg_exact_page_state(memcg, NR_ACTIVE_FILE);
        *pheadroom = PAGE_COUNTER_MAX;
 
        while ((parent = parent_mem_cgroup(memcg))) {