diff options
author | Viresh Kumar <viresh.kumar@linaro.org> | 2014-02-28 14:15:21 +0530 |
---|---|---|
committer | Thomas Gleixner <tglx@linutronix.de> | 2014-03-04 12:30:29 +0100 |
commit | c24a4a369419c360c323865b91198878275c1481 (patch) | |
tree | cb526ee4537a3905c50dfc8a06413967bdf904ee /kernel/timer.c | |
parent | bce19369515ff77033d0916cfbc356eca2be9f63 (diff) | |
download | linux-stable-c24a4a369419c360c323865b91198878275c1481.tar.gz linux-stable-c24a4a369419c360c323865b91198878275c1481.tar.bz2 linux-stable-c24a4a369419c360c323865b91198878275c1481.zip |
timer: Check failure of timer_cpu_notify() before calling init_timer_stats()
timer_cpu_notify() should return NOTIFY_OK and nothing else. Anything else would
trigger a BUG_ON(). Return value of this routine is already checked correctly
but is done after issuing a call to init_timer_stats(). The right order would be
to check the error case first and then call init_timer_stats(). Lets do it.
Signed-off-by: Viresh Kumar <viresh.kumar@linaro.org>
Cc: linaro-kernel@lists.linaro.org
Cc: fweisbec@gmail.com
Cc: tj@kernel.org
Cc: peterz@infradead.org
Link: http://lkml.kernel.org/r/c439f5b6bbc2047e1662f4d523350531425bcf9d.1393576981.git.viresh.kumar@linaro.org
Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Diffstat (limited to 'kernel/timer.c')
-rw-r--r-- | kernel/timer.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/kernel/timer.c b/kernel/timer.c index a71bdfdb51e7..31824ef3eb96 100644 --- a/kernel/timer.c +++ b/kernel/timer.c @@ -1681,9 +1681,9 @@ void __init init_timers(void) err = timer_cpu_notify(&timers_nb, (unsigned long)CPU_UP_PREPARE, (void *)(long)smp_processor_id()); - init_timer_stats(); - BUG_ON(err != NOTIFY_OK); + + init_timer_stats(); register_cpu_notifier(&timers_nb); open_softirq(TIMER_SOFTIRQ, run_timer_softirq); } |