diff options
-rw-r--r-- | arch/x86/kernel/apic_64.c | 2 | ||||
-rw-r--r-- | arch/x86/kernel/crash.c | 4 | ||||
-rw-r--r-- | arch/x86/kernel/io_apic_64.c | 2 | ||||
-rw-r--r-- | arch/x86/kernel/smp.c | 6 | ||||
-rw-r--r-- | arch/x86/kernel/tlb_64.c | 3 | ||||
-rw-r--r-- | include/asm-x86/mach-default/mach_ipi.h | 10 | ||||
-rw-r--r-- | include/asm-x86/mach_apic.h | 3 |
7 files changed, 17 insertions, 13 deletions
diff --git a/arch/x86/kernel/apic_64.c b/arch/x86/kernel/apic_64.c index 5362cfd30ecd..206278f1c6f4 100644 --- a/arch/x86/kernel/apic_64.c +++ b/arch/x86/kernel/apic_64.c | |||
@@ -41,6 +41,8 @@ | |||
41 | #include <asm/timex.h> | 41 | #include <asm/timex.h> |
42 | #include <asm/apic.h> | 42 | #include <asm/apic.h> |
43 | 43 | ||
44 | #include <mach_ipi.h> | ||
45 | |||
44 | int disable_apic_timer __cpuinitdata; | 46 | int disable_apic_timer __cpuinitdata; |
45 | static int apic_calibrate_pmtmr __initdata; | 47 | static int apic_calibrate_pmtmr __initdata; |
46 | int disable_apic; | 48 | int disable_apic; |
diff --git a/arch/x86/kernel/crash.c b/arch/x86/kernel/crash.c index 9a5fa0abfcc7..2251d0ae9570 100644 --- a/arch/x86/kernel/crash.c +++ b/arch/x86/kernel/crash.c | |||
@@ -26,11 +26,7 @@ | |||
26 | #include <linux/kdebug.h> | 26 | #include <linux/kdebug.h> |
27 | #include <asm/smp.h> | 27 | #include <asm/smp.h> |
28 | 28 | ||
29 | #ifdef CONFIG_X86_32 | ||
30 | #include <mach_ipi.h> | 29 | #include <mach_ipi.h> |
31 | #else | ||
32 | #include <asm/mach_apic.h> | ||
33 | #endif | ||
34 | 30 | ||
35 | /* This keeps a track of which one is crashing cpu. */ | 31 | /* This keeps a track of which one is crashing cpu. */ |
36 | static int crashing_cpu; | 32 | static int crashing_cpu; |
diff --git a/arch/x86/kernel/io_apic_64.c b/arch/x86/kernel/io_apic_64.c index 1627c0d53e0b..7d5cdf320eba 100644 --- a/arch/x86/kernel/io_apic_64.c +++ b/arch/x86/kernel/io_apic_64.c | |||
@@ -50,6 +50,8 @@ | |||
50 | #include <asm/msidef.h> | 50 | #include <asm/msidef.h> |
51 | #include <asm/hypertransport.h> | 51 | #include <asm/hypertransport.h> |
52 | 52 | ||
53 | #include <mach_ipi.h> | ||
54 | |||
53 | struct irq_cfg { | 55 | struct irq_cfg { |
54 | cpumask_t domain; | 56 | cpumask_t domain; |
55 | cpumask_t old_domain; | 57 | cpumask_t old_domain; |
diff --git a/arch/x86/kernel/smp.c b/arch/x86/kernel/smp.c index 16c52aaaca35..8f75893a6467 100644 --- a/arch/x86/kernel/smp.c +++ b/arch/x86/kernel/smp.c | |||
@@ -26,12 +26,8 @@ | |||
26 | #include <asm/tlbflush.h> | 26 | #include <asm/tlbflush.h> |
27 | #include <asm/mmu_context.h> | 27 | #include <asm/mmu_context.h> |
28 | #include <asm/proto.h> | 28 | #include <asm/proto.h> |
29 | #ifdef CONFIG_X86_32 | ||
30 | #include <mach_apic.h> | ||
31 | #include <mach_ipi.h> | 29 | #include <mach_ipi.h> |
32 | #else | 30 | #include <mach_apic.h> |
33 | #include <asm/mach_apic.h> | ||
34 | #endif | ||
35 | /* | 31 | /* |
36 | * Some notes on x86 processor bugs affecting SMP operation: | 32 | * Some notes on x86 processor bugs affecting SMP operation: |
37 | * | 33 | * |
diff --git a/arch/x86/kernel/tlb_64.c b/arch/x86/kernel/tlb_64.c index 615d84817758..1558e513757e 100644 --- a/arch/x86/kernel/tlb_64.c +++ b/arch/x86/kernel/tlb_64.c | |||
@@ -11,11 +11,12 @@ | |||
11 | #include <asm/mtrr.h> | 11 | #include <asm/mtrr.h> |
12 | #include <asm/pgalloc.h> | 12 | #include <asm/pgalloc.h> |
13 | #include <asm/tlbflush.h> | 13 | #include <asm/tlbflush.h> |
14 | #include <asm/mach_apic.h> | ||
15 | #include <asm/mmu_context.h> | 14 | #include <asm/mmu_context.h> |
16 | #include <asm/proto.h> | 15 | #include <asm/proto.h> |
17 | #include <asm/apicdef.h> | 16 | #include <asm/apicdef.h> |
18 | #include <asm/idle.h> | 17 | #include <asm/idle.h> |
18 | |||
19 | #include <mach_ipi.h> | ||
19 | /* | 20 | /* |
20 | * Smarter SMP flushing macros. | 21 | * Smarter SMP flushing macros. |
21 | * c/o Linus Torvalds. | 22 | * c/o Linus Torvalds. |
diff --git a/include/asm-x86/mach-default/mach_ipi.h b/include/asm-x86/mach-default/mach_ipi.h index 0dba244c86db..be323364e68f 100644 --- a/include/asm-x86/mach-default/mach_ipi.h +++ b/include/asm-x86/mach-default/mach_ipi.h | |||
@@ -9,10 +9,15 @@ void __send_IPI_shortcut(unsigned int shortcut, int vector); | |||
9 | 9 | ||
10 | extern int no_broadcast; | 10 | extern int no_broadcast; |
11 | 11 | ||
12 | #ifdef CONFIG_X86_64 | ||
13 | #include <asm/genapic.h> | ||
14 | #define send_IPI_mask (genapic->send_IPI_mask) | ||
15 | #else | ||
12 | static inline void send_IPI_mask(cpumask_t mask, int vector) | 16 | static inline void send_IPI_mask(cpumask_t mask, int vector) |
13 | { | 17 | { |
14 | send_IPI_mask_bitmask(mask, vector); | 18 | send_IPI_mask_bitmask(mask, vector); |
15 | } | 19 | } |
20 | #endif | ||
16 | 21 | ||
17 | static inline void __local_send_IPI_allbutself(int vector) | 22 | static inline void __local_send_IPI_allbutself(int vector) |
18 | { | 23 | { |
@@ -33,6 +38,10 @@ static inline void __local_send_IPI_all(int vector) | |||
33 | __send_IPI_shortcut(APIC_DEST_ALLINC, vector); | 38 | __send_IPI_shortcut(APIC_DEST_ALLINC, vector); |
34 | } | 39 | } |
35 | 40 | ||
41 | #ifdef CONFIG_X86_64 | ||
42 | #define send_IPI_allbutself (genapic->send_IPI_allbutself) | ||
43 | #define send_IPI_all (genapic->send_IPI_all) | ||
44 | #else | ||
36 | static inline void send_IPI_allbutself(int vector) | 45 | static inline void send_IPI_allbutself(int vector) |
37 | { | 46 | { |
38 | /* | 47 | /* |
@@ -50,5 +59,6 @@ static inline void send_IPI_all(int vector) | |||
50 | { | 59 | { |
51 | __local_send_IPI_all(vector); | 60 | __local_send_IPI_all(vector); |
52 | } | 61 | } |
62 | #endif | ||
53 | 63 | ||
54 | #endif /* __ASM_MACH_IPI_H */ | 64 | #endif /* __ASM_MACH_IPI_H */ |
diff --git a/include/asm-x86/mach_apic.h b/include/asm-x86/mach_apic.h index 7b7115a0c1c9..1bc68c0c0cdf 100644 --- a/include/asm-x86/mach_apic.h +++ b/include/asm-x86/mach_apic.h | |||
@@ -20,9 +20,6 @@ | |||
20 | #define vector_allocation_domain (genapic->vector_allocation_domain) | 20 | #define vector_allocation_domain (genapic->vector_allocation_domain) |
21 | #define apic_id_registered (genapic->apic_id_registered) | 21 | #define apic_id_registered (genapic->apic_id_registered) |
22 | #define init_apic_ldr (genapic->init_apic_ldr) | 22 | #define init_apic_ldr (genapic->init_apic_ldr) |
23 | #define send_IPI_mask (genapic->send_IPI_mask) | ||
24 | #define send_IPI_allbutself (genapic->send_IPI_allbutself) | ||
25 | #define send_IPI_all (genapic->send_IPI_all) | ||
26 | #define cpu_mask_to_apicid (genapic->cpu_mask_to_apicid) | 23 | #define cpu_mask_to_apicid (genapic->cpu_mask_to_apicid) |
27 | #define phys_pkg_id (genapic->phys_pkg_id) | 24 | #define phys_pkg_id (genapic->phys_pkg_id) |
28 | 25 | ||