diff options
Diffstat (limited to 'kernel/hrtimer.c')
-rw-r--r-- | kernel/hrtimer.c | 5 |
1 files changed, 4 insertions, 1 deletions
diff --git a/kernel/hrtimer.c b/kernel/hrtimer.c index 72d034258ba1..065a89786628 100644 --- a/kernel/hrtimer.c +++ b/kernel/hrtimer.c | |||
@@ -558,7 +558,8 @@ static inline int hrtimer_enqueue_reprogram(struct hrtimer *timer, | |||
558 | */ | 558 | */ |
559 | static int hrtimer_switch_to_hres(void) | 559 | static int hrtimer_switch_to_hres(void) |
560 | { | 560 | { |
561 | struct hrtimer_cpu_base *base = &__get_cpu_var(hrtimer_bases); | 561 | int cpu = smp_processor_id(); |
562 | struct hrtimer_cpu_base *base = &per_cpu(hrtimer_bases, cpu); | ||
562 | unsigned long flags; | 563 | unsigned long flags; |
563 | 564 | ||
564 | if (base->hres_active) | 565 | if (base->hres_active) |
@@ -568,6 +569,8 @@ static int hrtimer_switch_to_hres(void) | |||
568 | 569 | ||
569 | if (tick_init_highres()) { | 570 | if (tick_init_highres()) { |
570 | local_irq_restore(flags); | 571 | local_irq_restore(flags); |
572 | printk(KERN_WARNING "Could not switch to high resolution " | ||
573 | "mode on CPU %d\n", cpu); | ||
571 | return 0; | 574 | return 0; |
572 | } | 575 | } |
573 | base->hres_active = 1; | 576 | base->hres_active = 1; |