diff options
Diffstat (limited to 'mm/memcontrol.c')
-rw-r--r-- | mm/memcontrol.c | 9 |
1 files changed, 2 insertions, 7 deletions
diff --git a/mm/memcontrol.c b/mm/memcontrol.c index 930de9437271..0e40f0205732 100644 --- a/mm/memcontrol.c +++ b/mm/memcontrol.c | |||
@@ -2169,13 +2169,7 @@ static void drain_all_stock(struct mem_cgroup *root_mem, bool sync) | |||
2169 | 2169 | ||
2170 | /* Notify other cpus that system-wide "drain" is running */ | 2170 | /* Notify other cpus that system-wide "drain" is running */ |
2171 | get_online_cpus(); | 2171 | get_online_cpus(); |
2172 | /* | 2172 | curcpu = get_cpu(); |
2173 | * Get a hint for avoiding draining charges on the current cpu, | ||
2174 | * which must be exhausted by our charging. It is not required that | ||
2175 | * this be a precise check, so we use raw_smp_processor_id() instead of | ||
2176 | * getcpu()/putcpu(). | ||
2177 | */ | ||
2178 | curcpu = raw_smp_processor_id(); | ||
2179 | for_each_online_cpu(cpu) { | 2173 | for_each_online_cpu(cpu) { |
2180 | struct memcg_stock_pcp *stock = &per_cpu(memcg_stock, cpu); | 2174 | struct memcg_stock_pcp *stock = &per_cpu(memcg_stock, cpu); |
2181 | struct mem_cgroup *mem; | 2175 | struct mem_cgroup *mem; |
@@ -2192,6 +2186,7 @@ static void drain_all_stock(struct mem_cgroup *root_mem, bool sync) | |||
2192 | schedule_work_on(cpu, &stock->work); | 2186 | schedule_work_on(cpu, &stock->work); |
2193 | } | 2187 | } |
2194 | } | 2188 | } |
2189 | put_cpu(); | ||
2195 | 2190 | ||
2196 | if (!sync) | 2191 | if (!sync) |
2197 | goto out; | 2192 | goto out; |