aboutsummaryrefslogtreecommitdiffstats
path: root/arch/x86/kernel/apic_32.c
diff options
context:
space:
mode:
authorAlan Mayer <ajm@sgi.com>2008-04-15 16:36:56 -0400
committerIngo Molnar <mingo@elte.hu>2008-05-12 15:28:06 -0400
commit305b92a2323eeaa4b481f409d54f778dd7e21a46 (patch)
tree0f32832b033de27b2ae5909bb06d4eabdd1a9b0b /arch/x86/kernel/apic_32.c
parent1a331957efd214fc3a84f70956dfaec65e70c031 (diff)
x86: change FIRST_SYSTEM_VECTOR to a variable
The SGI UV system needs several more system vectors than a vanilla x86_64 system. Rather than burden the other archs with extra system vectors that they don't use, change FIRST_SYSTEM_VECTOR to a variable, so that it can be dynamic. Signed-off-by: Alan Mayer <ajm@sgi.com> Signed-off-by: Ingo Molnar <mingo@elte.hu> Signed-off-by: Thomas Gleixner <tglx@linutronix.de>
Diffstat (limited to 'arch/x86/kernel/apic_32.c')
-rw-r--r--arch/x86/kernel/apic_32.c14
1 files changed, 7 insertions, 7 deletions
diff --git a/arch/x86/kernel/apic_32.c b/arch/x86/kernel/apic_32.c
index 4b99b1bdeb6c..807158e4b5d0 100644
--- a/arch/x86/kernel/apic_32.c
+++ b/arch/x86/kernel/apic_32.c
@@ -1351,13 +1351,13 @@ void __init smp_intr_init(void)
1351 * The reschedule interrupt is a CPU-to-CPU reschedule-helper 1351 * The reschedule interrupt is a CPU-to-CPU reschedule-helper
1352 * IPI, driven by wakeup. 1352 * IPI, driven by wakeup.
1353 */ 1353 */
1354 set_intr_gate(RESCHEDULE_VECTOR, reschedule_interrupt); 1354 alloc_intr_gate(RESCHEDULE_VECTOR, reschedule_interrupt);
1355 1355
1356 /* IPI for invalidation */ 1356 /* IPI for invalidation */
1357 set_intr_gate(INVALIDATE_TLB_VECTOR, invalidate_interrupt); 1357 alloc_intr_gate(INVALIDATE_TLB_VECTOR, invalidate_interrupt);
1358 1358
1359 /* IPI for generic function call */ 1359 /* IPI for generic function call */
1360 set_intr_gate(CALL_FUNCTION_VECTOR, call_function_interrupt); 1360 alloc_intr_gate(CALL_FUNCTION_VECTOR, call_function_interrupt);
1361} 1361}
1362#endif 1362#endif
1363 1363
@@ -1370,15 +1370,15 @@ void __init apic_intr_init(void)
1370 smp_intr_init(); 1370 smp_intr_init();
1371#endif 1371#endif
1372 /* self generated IPI for local APIC timer */ 1372 /* self generated IPI for local APIC timer */
1373 set_intr_gate(LOCAL_TIMER_VECTOR, apic_timer_interrupt); 1373 alloc_intr_gate(LOCAL_TIMER_VECTOR, apic_timer_interrupt);
1374 1374
1375 /* IPI vectors for APIC spurious and error interrupts */ 1375 /* IPI vectors for APIC spurious and error interrupts */
1376 set_intr_gate(SPURIOUS_APIC_VECTOR, spurious_interrupt); 1376 alloc_intr_gate(SPURIOUS_APIC_VECTOR, spurious_interrupt);
1377 set_intr_gate(ERROR_APIC_VECTOR, error_interrupt); 1377 alloc_intr_gate(ERROR_APIC_VECTOR, error_interrupt);
1378 1378
1379 /* thermal monitor LVT interrupt */ 1379 /* thermal monitor LVT interrupt */
1380#ifdef CONFIG_X86_MCE_P4THERMAL 1380#ifdef CONFIG_X86_MCE_P4THERMAL
1381 set_intr_gate(THERMAL_APIC_VECTOR, thermal_interrupt); 1381 alloc_intr_gate(THERMAL_APIC_VECTOR, thermal_interrupt);
1382#endif 1382#endif
1383} 1383}
1384 1384