Message ID | 6df650d6e6d696a555b6cf81d53b428530496e63.1395832156.git.viresh.kumar@linaro.org |
---|---|
State | New |
Headers | show |
On 03/26/2014 04:51 PM, Viresh Kumar wrote: > In init_timers() we need to call init_timers_cpu() for boot CPU. For this, > currently we are emulating a call to hotplug notifier. Probably this was done > initially to get rid of code redundancy. But this sequence always called a > single routine, i.e. init_timers_cpu(), and so calling that routine directly > would be better. This would get rid of emulating a notifier call, few typecasts > and the extra steps we are doing in notifier callback. > > So, this patch calls init_timers_cpu() directly from init_timers(). > Same here: I don't think this is a good idea, for the same reason I gave for patch 12. Regards, Srivatsa S. Bhat > Signed-off-by: Viresh Kumar <viresh.kumar@linaro.org> > --- > kernel/timer.c | 8 +------- > 1 file changed, 1 insertion(+), 7 deletions(-) > > diff --git a/kernel/timer.c b/kernel/timer.c > index 4360edc..d13eb56 100644 > --- a/kernel/timer.c > +++ b/kernel/timer.c > @@ -1666,15 +1666,9 @@ static struct notifier_block timers_nb = { > > void __init init_timers(void) > { > - int err; > - > /* ensure there are enough low bits for flags in timer->base pointer */ > BUILD_BUG_ON(__alignof__(struct tvec_base) & TIMER_FLAG_MASK); > - > - err = timer_cpu_notify(&timers_nb, (unsigned long)CPU_UP_PREPARE, > - (void *)(long)smp_processor_id()); > - BUG_ON(err != NOTIFY_OK); > - > + BUG_ON(init_timers_cpu(smp_processor_id())); > init_timer_stats(); > register_cpu_notifier(&timers_nb); > open_softirq(TIMER_SOFTIRQ, run_timer_softirq); > -- To unsubscribe from this list: send the line "unsubscribe linux-kernel" in the body of a message to majordomo@vger.kernel.org More majordomo info at http://vger.kernel.org/majordomo-info.html Please read the FAQ at http://www.tux.org/lkml/
diff --git a/kernel/timer.c b/kernel/timer.c index 4360edc..d13eb56 100644 --- a/kernel/timer.c +++ b/kernel/timer.c @@ -1666,15 +1666,9 @@ static struct notifier_block timers_nb = { void __init init_timers(void) { - int err; - /* ensure there are enough low bits for flags in timer->base pointer */ BUILD_BUG_ON(__alignof__(struct tvec_base) & TIMER_FLAG_MASK); - - err = timer_cpu_notify(&timers_nb, (unsigned long)CPU_UP_PREPARE, - (void *)(long)smp_processor_id()); - BUG_ON(err != NOTIFY_OK); - + BUG_ON(init_timers_cpu(smp_processor_id())); init_timer_stats(); register_cpu_notifier(&timers_nb); open_softirq(TIMER_SOFTIRQ, run_timer_softirq);
In init_timers() we need to call init_timers_cpu() for boot CPU. For this, currently we are emulating a call to hotplug notifier. Probably this was done initially to get rid of code redundancy. But this sequence always called a single routine, i.e. init_timers_cpu(), and so calling that routine directly would be better. This would get rid of emulating a notifier call, few typecasts and the extra steps we are doing in notifier callback. So, this patch calls init_timers_cpu() directly from init_timers(). Signed-off-by: Viresh Kumar <viresh.kumar@linaro.org> --- kernel/timer.c | 8 +------- 1 file changed, 1 insertion(+), 7 deletions(-)