Commit a79017660ea4597ec489fab3b5aaf71dd776dfc7

Authored by Karsten Wiese
Committed by Thomas Gleixner
1 parent 38332cb987

time: don't touch an offlined CPU's ts->tick_stopped in tick_cancel_sched_timer()

Silences WARN_ONs in rcu_enter_nohz() and rcu_exit_nohz(), which appeared
before caused by (repeated) calls to:
        $ echo 0 > /sys/devices/system/cpu/cpu1/online
        $ echo 1 > /sys/devices/system/cpu/cpu1/online

Signed-off-by: Karsten Wiese <fzu@wemgehoertderstaat.de>
Cc: johnstul@us.ibm.com
Cc: Rafael Wysocki <rjw@sisk.pl>
Cc: Steven Rostedt <rostedt@goodmis.org>
Cc: Ingo Molnar <mingo@elte.hu>
Acked-by: Paul E. McKenney <paulmck@linux.vnet.ibm.com>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>

Showing 1 changed file with 1 additions and 1 deletions Side-by-side Diff

kernel/time/tick-sched.c
... ... @@ -640,7 +640,7 @@
640 640  
641 641 if (ts->sched_timer.base)
642 642 hrtimer_cancel(&ts->sched_timer);
643   - ts->tick_stopped = 0;
  643 +
644 644 ts->nohz_mode = NOHZ_MODE_INACTIVE;
645 645 }
646 646 #endif /* HIGH_RES_TIMERS */