x86: preset apic clockevents multiplicator
authorThomas Gleixner <tglx@linutronix.de>
Wed, 30 Jan 2008 12:33:04 +0000 (13:33 +0100)
committerIngo Molnar <mingo@elte.hu>
Wed, 30 Jan 2008 12:33:04 +0000 (13:33 +0100)
The check for an unitialized clock event device triggers, when the local
apic timer is registered as a dummy clock event device for broadcasting.
Preset the multiplicator to avoid a false positive.

Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Signed-off-by: Ingo Molnar <mingo@elte.hu>
arch/x86/kernel/apic_32.c
arch/x86/kernel/apic_64.c

index 20d4dbc42e6ef2ce54fbdf8d668bf3f0bc9f4460..d07a603807d19e55e83d42119ba20010847025b1 100644 (file)
@@ -377,8 +377,10 @@ void __init setup_boot_APIC_clock(void)
         */
        if (local_apic_timer_disabled) {
                /* No broadcast on UP ! */
-               if (num_possible_cpus() > 1)
+               if (num_possible_cpus() > 1) {
+                       lapic_clockevent.mult = 1;
                        setup_APIC_timer();
+               }
                return;
        }
 
index 731b48660fc4385249fb305afbbe023947331785..01d4ca27ecf0496ade8cffde14b2107ae9ae5931 100644 (file)
@@ -375,8 +375,10 @@ void __init setup_boot_APIC_clock(void)
        if (disable_apic_timer) {
                printk(KERN_INFO "Disabling APIC timer\n");
                /* No broadcast on UP ! */
-               if (num_possible_cpus() > 1)
+               if (num_possible_cpus() > 1) {
+                       lapic_clockevent.mult = 1;
                        setup_APIC_timer();
+               }
                return;
        }