Messages in this thread | | | Date | Fri, 28 Mar 2008 21:15:32 +0100 | From | Ingo Molnar <> | Subject | Re: [PATCH 8/8] x86_64: Support for new UV apic |
| |
* Jack Steiner <steiner@sgi.com> wrote:
> Index: linux/arch/x86/kernel/apic_64.c > =================================================================== > --- linux.orig/arch/x86/kernel/apic_64.c 2008-03-28 13:00:22.000000000 -0500 > +++ linux/arch/x86/kernel/apic_64.c 2008-03-28 13:06:12.000000000 -0500 > @@ -738,6 +738,7 @@ void __cpuinit setup_local_APIC(void) > unsigned int value; > int i, j; > > + preempt_disable(); > value = apic_read(APIC_LVR); > > BUILD_BUG_ON((SPURIOUS_APIC_VECTOR & 0x0f) != 0x0f); > @@ -831,6 +832,7 @@ void __cpuinit setup_local_APIC(void) > else > value = APIC_DM_NMI | APIC_LVT_MASKED; > apic_write(APIC_LVT1, value); > + preempt_enable(); > }
hm, this looks a bit weird - why are all the preempt-disable/enable calls needed?
Ingo
| |