On Mon, Feb 13, 2012 at 7:07 PM, KAMEZAWA Hiroyuki <kamezawa.hiroyu@xxxxxxxxxxxxxx> wrote: > From 9cdb3b63dc8d08cc2220c54c80438c13433a0d12 Mon Sep 17 00:00:00 2001 > From: KAMEZAWA Hiroyuki <kamezawa.hiroyu@xxxxxxxxxxxxxx> > Date: Thu, 2 Feb 2012 10:02:39 +0900 > Subject: [PATCH 2/6] memcg: simplify move_account() check. > > In memcg, for avoiding take-lock-irq-off at accessing page_cgroup, > a logic, flag + rcu_read_lock(), is used. This works as following > > CPU-A CPU-B > rcu_read_lock() > set flag > if(flag is set) > take heavy lock > do job. > synchronize_rcu() rcu_read_unlock() I assume that CPU-A will take heavy lock after synchronize_rcu() when updating variables read by CPU-B. > memcontrol.c | 65 ++++++++++++++++++++++------------------------------------- > 1 file changed, 25 insertions(+), 40 deletions(-) > > Signed-off-by: KAMEZAWA Hiroyuki <kamezawa.hiroyu@xxxxxxxxxxxxxx> Acked-by: Greg Thelen <gthelen@xxxxxxxxxx> > --- > mm/memcontrol.c | 70 +++++++++++++++++++++++------------------------------- > 1 files changed, 30 insertions(+), 40 deletions(-) > @@ -2089,11 +2082,8 @@ static int __cpuinit memcg_cpu_hotplug_callback(struct notifier_block *nb, > struct memcg_stock_pcp *stock; > struct mem_cgroup *iter; > > - if ((action == CPU_ONLINE)) { > - for_each_mem_cgroup(iter) > - synchronize_mem_cgroup_on_move(iter, cpu); > + if ((action == CPU_ONLINE)) Extra parenthesis. I recommend: + if (action == CPU_ONLINE) -- To unsubscribe, send a message with 'unsubscribe linux-mm' in the body to majordomo@xxxxxxxxx. For more info on Linux MM, see: http://www.linux-mm.org/ . Fight unfair telecom internet charges in Canada: sign http://stopthemeter.ca/ Don't email: <a href