From 77663a9d54da27dff2c7373961ff47ad16db3380 Mon Sep 17 00:00:00 2001 From: Xu Yu Date: Mon, 30 Dec 2019 17:52:41 +0800 Subject: [PATCH 0877/2944] alinux: mm, memcg: gather memsli/exstat from all possible cpus to #26424368 CPU hotplug may occur in some business scenarios, resulting in unavailable per-cpu memsli/exstat data on those non-present or offline CPU(s). This fixes the potential problem by using for_each_possible_cpu macro when gathering per-cpu memsli/exstat data. Signed-off-by: Xu Yu Reviewed-by: Xunlei Pang Reviewed-by: Yang Shi --- mm/memcontrol.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/mm/memcontrol.c b/mm/memcontrol.c index fb7bb65..b10f3c4 100644 --- a/mm/memcontrol.c +++ b/mm/memcontrol.c @@ -4214,7 +4214,7 @@ static u64 memcg_exstat_gather(struct mem_cgroup *memcg, u64 sum = 0; int cpu; - for_each_online_cpu(cpu) + for_each_possible_cpu(cpu) sum += per_cpu_ptr(memcg->exstat_cpu, cpu)->item[idx]; return sum; @@ -4568,7 +4568,7 @@ static u64 memcg_lat_stat_gather(struct mem_cgroup *memcg, u64 sum = 0; int cpu; - for_each_online_cpu(cpu) + for_each_possible_cpu(cpu) sum += per_cpu_ptr(memcg->lat_stat_cpu, cpu)->item[sidx][cidx]; return sum; -- 1.8.3.1