summaryrefslogtreecommitdiffstats
path: root/arch
diff options
context:
space:
mode:
authorAndi Kleen <andi@firstfloor.org>2008-03-11 02:23:20 +0100
committerIngo Molnar <mingo@elte.hu>2008-04-17 17:41:29 +0200
commit5524ea320d80e3ac6aeeec44216660831c76da08 (patch)
treec4215dbc41cedac15838ff5110958fa7ed8e9a67 /arch
parent366932deb335f0b84a08463c5c912bd42ac3397a (diff)
downloadop-kernel-dev-5524ea320d80e3ac6aeeec44216660831c76da08.zip
op-kernel-dev-5524ea320d80e3ac6aeeec44216660831c76da08.tar.gz
x86: don't set up early exception handlers for external interrupts
All of early setup runs with interrupts disabled, so there is no need to set up early exception handlers for vectors >= 32 This saves some minor text size. Signed-off-by: Andi Kleen <ak@suse.de> Cc: mingo@elte.hu Signed-off-by: Thomas Gleixner <tglx@linutronix.de> Signed-off-by: Ingo Molnar <mingo@elte.hu>
Diffstat (limited to 'arch')
-rw-r--r--arch/x86/kernel/head64.c2
-rw-r--r--arch/x86/kernel/head_64.S6
2 files changed, 3 insertions, 5 deletions
diff --git a/arch/x86/kernel/head64.c b/arch/x86/kernel/head64.c
index 48be76c..d6d54fa 100644
--- a/arch/x86/kernel/head64.c
+++ b/arch/x86/kernel/head64.c
@@ -127,7 +127,7 @@ void __init x86_64_start_kernel(char * real_mode_data)
/* Cleanup the over mapped high alias */
cleanup_highmap();
- for (i = 0; i < IDT_ENTRIES; i++) {
+ for (i = 0; i < NUM_EXCEPTION_VECTORS; i++) {
#ifdef CONFIG_EARLY_PRINTK
set_intr_gate(i, &early_idt_handlers[i]);
#else
diff --git a/arch/x86/kernel/head_64.S b/arch/x86/kernel/head_64.S
index 0172169..2c0abe0 100644
--- a/arch/x86/kernel/head_64.S
+++ b/arch/x86/kernel/head_64.S
@@ -278,10 +278,8 @@ bad_address:
.globl early_idt_handlers
early_idt_handlers:
- early_idt_tramp 0, 63
- early_idt_tramp 64, 127
- early_idt_tramp 128, 191
- early_idt_tramp 192, 255
+ .set maxe, NUM_EXCEPTION_VECTORS-1
+ early_idt_tramp 0, maxe
#endif
ENTRY(early_idt_handler)
OpenPOWER on IntegriCloud