X-Git-Url: http://pilppa.org/gitweb/?a=blobdiff_plain;f=kernel%2Frcutree.c;h=97ce31579ec0664682e1b2efb792cd77e7c0030e;hb=edb35028e40515beb2f94808aff8b3e71fb9f35a;hp=f2d8638e6c60f12c193eb701af16cad6cb64e712;hpb=14ed74fbe2b917f0ad3e30cf2644203c04a45e89;p=linux-2.6-omap-h63xx.git diff --git a/kernel/rcutree.c b/kernel/rcutree.c index f2d8638e6c6..97ce31579ec 100644 --- a/kernel/rcutree.c +++ b/kernel/rcutree.c @@ -948,8 +948,8 @@ static void rcu_do_batch(struct rcu_data *rdp) void rcu_check_callbacks(int cpu, int user) { if (user || - (idle_cpu(cpu) && !in_softirq() && - hardirq_count() <= (1 << HARDIRQ_SHIFT))) { + (idle_cpu(cpu) && rcu_scheduler_active && + !in_softirq() && hardirq_count() <= (1 << HARDIRQ_SHIFT))) { /* * Get here if this CPU took its interrupt from user @@ -1314,7 +1314,7 @@ int rcu_needs_cpu(int cpu) * access due to the fact that this CPU cannot possibly have any RCU * callbacks in flight yet. */ -static void +static void __cpuinit rcu_init_percpu_data(int cpu, struct rcu_state *rsp) { unsigned long flags;