aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorFrederic Weisbecker <fweisbec@gmail.com>2011-11-28 19:26:56 -0500
committerPaul E. McKenney <paulmck@linux.vnet.ibm.com>2011-12-11 13:32:08 -0500
commitfacc4e159672b4ed10aa18147bfa187b013c9505 (patch)
tree0b058683e1dde49a73b858fc29477e6f76860add
parentb6fc6020140db437069d5bec447858fcfd64d31c (diff)
rcu: Irq nesting is always 0 on rcu_enter_idle_common
Because tasks don't nest, the ->dyntick_nesting must always be zero upon entry to rcu_idle_enter_common(). Therefore, pass "0" rather than the counter itself. Signed-off-by: Frederic Weisbecker <fweisbec@gmail.com> Cc: Josh Triplett <josh@joshtriplett.org> Signed-off-by: Paul E. McKenney <paulmck@linux.vnet.ibm.com>
-rw-r--r--kernel/rcutree.c5
1 files changed, 2 insertions, 3 deletions
diff --git a/kernel/rcutree.c b/kernel/rcutree.c
index 860c02c7c959..c0ed3765ec39 100644
--- a/kernel/rcutree.c
+++ b/kernel/rcutree.c
@@ -350,12 +350,11 @@ static int rcu_implicit_offline_qs(struct rcu_data *rdp)
350 */ 350 */
351static void rcu_idle_enter_common(struct rcu_dynticks *rdtp, long long oldval) 351static void rcu_idle_enter_common(struct rcu_dynticks *rdtp, long long oldval)
352{ 352{
353 trace_rcu_dyntick("Start", oldval, rdtp->dynticks_nesting); 353 trace_rcu_dyntick("Start", oldval, 0);
354 if (!is_idle_task(current)) { 354 if (!is_idle_task(current)) {
355 struct task_struct *idle = idle_task(smp_processor_id()); 355 struct task_struct *idle = idle_task(smp_processor_id());
356 356
357 trace_rcu_dyntick("Error on entry: not idle task", 357 trace_rcu_dyntick("Error on entry: not idle task", oldval, 0);
358 oldval, rdtp->dynticks_nesting);
359 ftrace_dump(DUMP_ALL); 358 ftrace_dump(DUMP_ALL);
360 WARN_ONCE(1, "Current pid: %d comm: %s / Idle pid: %d comm: %s", 359 WARN_ONCE(1, "Current pid: %d comm: %s / Idle pid: %d comm: %s",
361 current->pid, current->comm, 360 current->pid, current->comm,