aboutsummaryrefslogtreecommitdiff
path: root/kernel/rcuclassic.c
diff options
context:
space:
mode:
authorTakashi Iwai <tiwai@suse.de>2009-03-09 15:21:57 +0100
committerTakashi Iwai <tiwai@suse.de>2009-03-09 15:21:57 +0100
commitefdcd41b4e41560375bb34ad8b095bcaa1c3a93f (patch)
tree57200ef68bae530776c0c2621c51e9464e1e72f9 /kernel/rcuclassic.c
parent33dbe6114047496a5b6fee0941c52dad41250043 (diff)
parent79c7cdd5441f5d3900c1632adcc8cd2bee35c8da (diff)
Merge branch 'topic/vmaster-update' into topic/docbook-fix
Diffstat (limited to 'kernel/rcuclassic.c')
-rw-r--r--kernel/rcuclassic.c6
1 files changed, 3 insertions, 3 deletions
diff --git a/kernel/rcuclassic.c b/kernel/rcuclassic.c
index 490934fc7ac..654c640a6b9 100644
--- a/kernel/rcuclassic.c
+++ b/kernel/rcuclassic.c
@@ -679,8 +679,8 @@ int rcu_needs_cpu(int cpu)
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
@@ -716,7 +716,7 @@ void rcu_check_callbacks(int cpu, int user)
raise_rcu_softirq();
}
-static void rcu_init_percpu_data(int cpu, struct rcu_ctrlblk *rcp,
+static void __cpuinit rcu_init_percpu_data(int cpu, struct rcu_ctrlblk *rcp,
struct rcu_data *rdp)
{
unsigned long flags;