diff options
Diffstat (limited to 'arch/x86/include/asm/hw_irq.h')
-rw-r--r-- | arch/x86/include/asm/hw_irq.h | 120 |
1 files changed, 58 insertions, 62 deletions
diff --git a/arch/x86/include/asm/hw_irq.h b/arch/x86/include/asm/hw_irq.h index e4ac559c4a24..92b3bae08b74 100644 --- a/arch/x86/include/asm/hw_irq.h +++ b/arch/x86/include/asm/hw_irq.h | |||
@@ -26,56 +26,56 @@ | |||
26 | #include <asm/sections.h> | 26 | #include <asm/sections.h> |
27 | 27 | ||
28 | /* Interrupt handlers registered during init_IRQ */ | 28 | /* Interrupt handlers registered during init_IRQ */ |
29 | extern void apic_timer_interrupt(void); | 29 | extern asmlinkage void apic_timer_interrupt(void); |
30 | extern void x86_platform_ipi(void); | 30 | extern asmlinkage void x86_platform_ipi(void); |
31 | extern void kvm_posted_intr_ipi(void); | 31 | extern asmlinkage void kvm_posted_intr_ipi(void); |
32 | extern void error_interrupt(void); | 32 | extern asmlinkage void error_interrupt(void); |
33 | extern void irq_work_interrupt(void); | 33 | extern asmlinkage void irq_work_interrupt(void); |
34 | 34 | ||
35 | extern void spurious_interrupt(void); | 35 | extern asmlinkage void spurious_interrupt(void); |
36 | extern void thermal_interrupt(void); | 36 | extern asmlinkage void thermal_interrupt(void); |
37 | extern void reschedule_interrupt(void); | 37 | extern asmlinkage void reschedule_interrupt(void); |
38 | 38 | ||
39 | extern void invalidate_interrupt(void); | 39 | extern asmlinkage void invalidate_interrupt(void); |
40 | extern void invalidate_interrupt0(void); | 40 | extern asmlinkage void invalidate_interrupt0(void); |
41 | extern void invalidate_interrupt1(void); | 41 | extern asmlinkage void invalidate_interrupt1(void); |
42 | extern void invalidate_interrupt2(void); | 42 | extern asmlinkage void invalidate_interrupt2(void); |
43 | extern void invalidate_interrupt3(void); | 43 | extern asmlinkage void invalidate_interrupt3(void); |
44 | extern void invalidate_interrupt4(void); | 44 | extern asmlinkage void invalidate_interrupt4(void); |
45 | extern void invalidate_interrupt5(void); | 45 | extern asmlinkage void invalidate_interrupt5(void); |
46 | extern void invalidate_interrupt6(void); | 46 | extern asmlinkage void invalidate_interrupt6(void); |
47 | extern void invalidate_interrupt7(void); | 47 | extern asmlinkage void invalidate_interrupt7(void); |
48 | extern void invalidate_interrupt8(void); | 48 | extern asmlinkage void invalidate_interrupt8(void); |
49 | extern void invalidate_interrupt9(void); | 49 | extern asmlinkage void invalidate_interrupt9(void); |
50 | extern void invalidate_interrupt10(void); | 50 | extern asmlinkage void invalidate_interrupt10(void); |
51 | extern void invalidate_interrupt11(void); | 51 | extern asmlinkage void invalidate_interrupt11(void); |
52 | extern void invalidate_interrupt12(void); | 52 | extern asmlinkage void invalidate_interrupt12(void); |
53 | extern void invalidate_interrupt13(void); | 53 | extern asmlinkage void invalidate_interrupt13(void); |
54 | extern void invalidate_interrupt14(void); | 54 | extern asmlinkage void invalidate_interrupt14(void); |
55 | extern void invalidate_interrupt15(void); | 55 | extern asmlinkage void invalidate_interrupt15(void); |
56 | extern void invalidate_interrupt16(void); | 56 | extern asmlinkage void invalidate_interrupt16(void); |
57 | extern void invalidate_interrupt17(void); | 57 | extern asmlinkage void invalidate_interrupt17(void); |
58 | extern void invalidate_interrupt18(void); | 58 | extern asmlinkage void invalidate_interrupt18(void); |
59 | extern void invalidate_interrupt19(void); | 59 | extern asmlinkage void invalidate_interrupt19(void); |
60 | extern void invalidate_interrupt20(void); | 60 | extern asmlinkage void invalidate_interrupt20(void); |
61 | extern void invalidate_interrupt21(void); | 61 | extern asmlinkage void invalidate_interrupt21(void); |
62 | extern void invalidate_interrupt22(void); | 62 | extern asmlinkage void invalidate_interrupt22(void); |
63 | extern void invalidate_interrupt23(void); | 63 | extern asmlinkage void invalidate_interrupt23(void); |
64 | extern void invalidate_interrupt24(void); | 64 | extern asmlinkage void invalidate_interrupt24(void); |
65 | extern void invalidate_interrupt25(void); | 65 | extern asmlinkage void invalidate_interrupt25(void); |
66 | extern void invalidate_interrupt26(void); | 66 | extern asmlinkage void invalidate_interrupt26(void); |
67 | extern void invalidate_interrupt27(void); | 67 | extern asmlinkage void invalidate_interrupt27(void); |
68 | extern void invalidate_interrupt28(void); | 68 | extern asmlinkage void invalidate_interrupt28(void); |
69 | extern void invalidate_interrupt29(void); | 69 | extern asmlinkage void invalidate_interrupt29(void); |
70 | extern void invalidate_interrupt30(void); | 70 | extern asmlinkage void invalidate_interrupt30(void); |
71 | extern void invalidate_interrupt31(void); | 71 | extern asmlinkage void invalidate_interrupt31(void); |
72 | 72 | ||
73 | extern void irq_move_cleanup_interrupt(void); | 73 | extern asmlinkage void irq_move_cleanup_interrupt(void); |
74 | extern void reboot_interrupt(void); | 74 | extern asmlinkage void reboot_interrupt(void); |
75 | extern void threshold_interrupt(void); | 75 | extern asmlinkage void threshold_interrupt(void); |
76 | 76 | ||
77 | extern void call_function_interrupt(void); | 77 | extern asmlinkage void call_function_interrupt(void); |
78 | extern void call_function_single_interrupt(void); | 78 | extern asmlinkage void call_function_single_interrupt(void); |
79 | 79 | ||
80 | #ifdef CONFIG_TRACING | 80 | #ifdef CONFIG_TRACING |
81 | /* Interrupt handlers registered during init_IRQ */ | 81 | /* Interrupt handlers registered during init_IRQ */ |
@@ -172,22 +172,18 @@ extern atomic_t irq_mis_count; | |||
172 | extern void eisa_set_level_irq(unsigned int irq); | 172 | extern void eisa_set_level_irq(unsigned int irq); |
173 | 173 | ||
174 | /* SMP */ | 174 | /* SMP */ |
175 | extern void smp_apic_timer_interrupt(struct pt_regs *); | 175 | extern __visible void smp_apic_timer_interrupt(struct pt_regs *); |
176 | extern void smp_spurious_interrupt(struct pt_regs *); | 176 | extern __visible void smp_spurious_interrupt(struct pt_regs *); |
177 | extern void smp_x86_platform_ipi(struct pt_regs *); | 177 | extern __visible void smp_x86_platform_ipi(struct pt_regs *); |
178 | extern void smp_error_interrupt(struct pt_regs *); | 178 | extern __visible void smp_error_interrupt(struct pt_regs *); |
179 | #ifdef CONFIG_X86_IO_APIC | 179 | #ifdef CONFIG_X86_IO_APIC |
180 | extern asmlinkage void smp_irq_move_cleanup_interrupt(void); | 180 | extern asmlinkage void smp_irq_move_cleanup_interrupt(void); |
181 | #endif | 181 | #endif |
182 | #ifdef CONFIG_SMP | 182 | #ifdef CONFIG_SMP |
183 | extern void smp_reschedule_interrupt(struct pt_regs *); | 183 | extern __visible void smp_reschedule_interrupt(struct pt_regs *); |
184 | extern void smp_call_function_interrupt(struct pt_regs *); | 184 | extern __visible void smp_call_function_interrupt(struct pt_regs *); |
185 | extern void smp_call_function_single_interrupt(struct pt_regs *); | 185 | extern __visible void smp_call_function_single_interrupt(struct pt_regs *); |
186 | #ifdef CONFIG_X86_32 | 186 | extern __visible void smp_invalidate_interrupt(struct pt_regs *); |
187 | extern void smp_invalidate_interrupt(struct pt_regs *); | ||
188 | #else | ||
189 | extern asmlinkage void smp_invalidate_interrupt(struct pt_regs *); | ||
190 | #endif | ||
191 | #endif | 187 | #endif |
192 | 188 | ||
193 | extern void (*__initconst interrupt[NR_VECTORS-FIRST_EXTERNAL_VECTOR])(void); | 189 | extern void (*__initconst interrupt[NR_VECTORS-FIRST_EXTERNAL_VECTOR])(void); |