diff options
author | Rusty Russell <rusty@rustcorp.com.au> | 2006-12-06 20:14:08 -0500 |
---|---|---|
committer | Andi Kleen <andi@basil.nowhere.org> | 2006-12-06 20:14:08 -0500 |
commit | 13623d79309dd82e1964458fa017979d16f33fa8 (patch) | |
tree | b994f0ba2cd7aec284e4132cf00acc0fecaa887e /arch | |
parent | 6020c8f315709a508b027ef6749e85b125190947 (diff) |
[PATCH] paravirt: Add APIC accessors to paravirt-ops.
Add APIC accessors to paravirt-ops. Unfortunately, we need two write
functions, as some older broken hardware requires workarounds for
Pentium APIC errata - this is the purpose of apic_write_atomic.
AK: replaced __inline with inline
Signed-off-by: Zachary Amsden <zach@vmware.com>
Signed-off-by: Chris Wright <chrisw@sous-sol.org>
Signed-off-by: Andi Kleen <ak@suse.de>
Cc: Rusty Russell <rusty@rustcorp.com.au>
Cc: Jeremy Fitzhardinge <jeremy@goop.org>
Signed-off-by: Andrew Morton <akpm@osdl.org>
Diffstat (limited to 'arch')
-rw-r--r-- | arch/i386/kernel/paravirt.c | 8 |
1 files changed, 8 insertions, 0 deletions
diff --git a/arch/i386/kernel/paravirt.c b/arch/i386/kernel/paravirt.c index 5a9bd3250a1a..fe82eb3adf42 100644 --- a/arch/i386/kernel/paravirt.c +++ b/arch/i386/kernel/paravirt.c | |||
@@ -29,6 +29,8 @@ | |||
29 | #include <asm/time.h> | 29 | #include <asm/time.h> |
30 | #include <asm/irq.h> | 30 | #include <asm/irq.h> |
31 | #include <asm/delay.h> | 31 | #include <asm/delay.h> |
32 | #include <asm/fixmap.h> | ||
33 | #include <asm/apic.h> | ||
32 | 34 | ||
33 | /* nop stub */ | 35 | /* nop stub */ |
34 | static void native_nop(void) | 36 | static void native_nop(void) |
@@ -446,6 +448,12 @@ struct paravirt_ops paravirt_ops = { | |||
446 | .io_delay = native_io_delay, | 448 | .io_delay = native_io_delay, |
447 | .const_udelay = __const_udelay, | 449 | .const_udelay = __const_udelay, |
448 | 450 | ||
451 | #ifdef CONFIG_X86_LOCAL_APIC | ||
452 | .apic_write = native_apic_write, | ||
453 | .apic_write_atomic = native_apic_write_atomic, | ||
454 | .apic_read = native_apic_read, | ||
455 | #endif | ||
456 | |||
449 | .irq_enable_sysexit = native_irq_enable_sysexit, | 457 | .irq_enable_sysexit = native_irq_enable_sysexit, |
450 | .iret = native_iret, | 458 | .iret = native_iret, |
451 | }; | 459 | }; |