diff options
author | Dmitry Torokhov <dmitry.torokhov@gmail.com> | 2013-06-28 02:00:25 -0400 |
---|---|---|
committer | Dmitry Torokhov <dmitry.torokhov@gmail.com> | 2013-06-28 02:00:25 -0400 |
commit | 31881d74b6dd1a6c530cff61248def4f2da38bee (patch) | |
tree | be62420cf39192074e13b25553d172b9d5e58a33 /kernel/time/tick-common.c | |
parent | 8855f30cd2b68012571932c7b01290c20be4508c (diff) | |
parent | 257867dc8d893690c175c1f717f91c3b6d44a63d (diff) |
Merge branch 'for-next' of git://github.com/rydberg/linux into next
Pull in changes from Henrik: "a trivial MT documentation fix".
Diffstat (limited to 'kernel/time/tick-common.c')
-rw-r--r-- | kernel/time/tick-common.c | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/kernel/time/tick-common.c b/kernel/time/tick-common.c index b1600a6973f4..5d3fb100bc06 100644 --- a/kernel/time/tick-common.c +++ b/kernel/time/tick-common.c | |||
@@ -163,7 +163,10 @@ static void tick_setup_device(struct tick_device *td, | |||
163 | * this cpu: | 163 | * this cpu: |
164 | */ | 164 | */ |
165 | if (tick_do_timer_cpu == TICK_DO_TIMER_BOOT) { | 165 | if (tick_do_timer_cpu == TICK_DO_TIMER_BOOT) { |
166 | tick_do_timer_cpu = cpu; | 166 | if (!tick_nohz_full_cpu(cpu)) |
167 | tick_do_timer_cpu = cpu; | ||
168 | else | ||
169 | tick_do_timer_cpu = TICK_DO_TIMER_NONE; | ||
167 | tick_next_period = ktime_get(); | 170 | tick_next_period = ktime_get(); |
168 | tick_period = ktime_set(0, NSEC_PER_SEC / HZ); | 171 | tick_period = ktime_set(0, NSEC_PER_SEC / HZ); |
169 | } | 172 | } |
@@ -323,6 +326,7 @@ static void tick_shutdown(unsigned int *cpup) | |||
323 | */ | 326 | */ |
324 | dev->mode = CLOCK_EVT_MODE_UNUSED; | 327 | dev->mode = CLOCK_EVT_MODE_UNUSED; |
325 | clockevents_exchange_device(dev, NULL); | 328 | clockevents_exchange_device(dev, NULL); |
329 | dev->event_handler = clockevents_handle_noop; | ||
326 | td->evtdev = NULL; | 330 | td->evtdev = NULL; |
327 | } | 331 | } |
328 | raw_spin_unlock_irqrestore(&tick_device_lock, flags); | 332 | raw_spin_unlock_irqrestore(&tick_device_lock, flags); |
@@ -416,4 +420,5 @@ static struct notifier_block tick_notifier = { | |||
416 | void __init tick_init(void) | 420 | void __init tick_init(void) |
417 | { | 421 | { |
418 | clockevents_register_notifier(&tick_notifier); | 422 | clockevents_register_notifier(&tick_notifier); |
423 | tick_broadcast_init(); | ||
419 | } | 424 | } |