From: Andi Kleen <andi@firstfloor.org>
To: mingo@elte.hu, linux-kernel@vger.kernel.org, tglx@linutronix.de,
roland@redhat.com
Subject: [PATCH] [1/3] Don't set up early exception handlers for external interrupts
Date: Mon, 25 Feb 2008 12:07:08 +0100 (CET) [thread overview]
Message-ID: <200802251207.906590508@firstfloor.org> (raw)
All of early setup runs with interrupts disabled, so there is no
need to set up early exception handlers for vectors >= 32
That saves some text size
Signed-off-by: Andi Kleen <ak@suse.de>
---
arch/x86/kernel/head64.c | 2 +-
arch/x86/kernel/head_64.S | 6 ++----
include/asm-x86/segment.h | 3 ++-
3 files changed, 5 insertions(+), 6 deletions(-)
Index: linux/arch/x86/kernel/head64.c
===================================================================
--- linux.orig/arch/x86/kernel/head64.c
+++ linux/arch/x86/kernel/head64.c
@@ -91,7 +91,7 @@ void __init x86_64_start_kernel(char * r
/* 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
Index: linux/include/asm-x86/segment.h
===================================================================
--- linux.orig/include/asm-x86/segment.h
+++ linux/include/asm-x86/segment.h
@@ -191,13 +191,14 @@
#define SEGMENT_TI_MASK 0x4
#define IDT_ENTRIES 256
+#define NUM_EXCEPTION_VECTORS 32
#define GDT_SIZE (GDT_ENTRIES * 8)
#define GDT_ENTRY_TLS_ENTRIES 3
#define TLS_SIZE (GDT_ENTRY_TLS_ENTRIES * 8)
#ifdef __KERNEL__
#ifndef __ASSEMBLY__
-extern const char early_idt_handlers[IDT_ENTRIES][10];
+extern const char early_idt_handlers[NUM_EXCEPTION_VECTORS][10];
#endif
#endif
Index: linux/arch/x86/kernel/head_64.S
===================================================================
--- linux.orig/arch/x86/kernel/head_64.S
+++ linux/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)
next reply other threads:[~2008-02-25 11:07 UTC|newest]
Thread overview: 3+ messages / expand[flat|nested] mbox.gz Atom feed top
2008-02-25 11:07 Andi Kleen [this message]
2008-02-25 11:07 ` [PATCH] [2/3] Move early exception handlers into init.text Andi Kleen
2008-02-25 11:07 ` [PATCH] [3/3] Replace macro recursion with more conventional loop Andi Kleen
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=200802251207.906590508@firstfloor.org \
--to=andi@firstfloor.org \
--cc=linux-kernel@vger.kernel.org \
--cc=mingo@elte.hu \
--cc=roland@redhat.com \
--cc=tglx@linutronix.de \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox