diff options
Diffstat (limited to 'arch/x86/include/asm')
-rw-r--r-- | arch/x86/include/asm/entry_arch.h | 1 | ||||
-rw-r--r-- | arch/x86/include/asm/hw_irq.h | 4 | ||||
-rw-r--r-- | arch/x86/include/asm/irq_vectors.h | 6 |
3 files changed, 11 insertions, 0 deletions
diff --git a/arch/x86/include/asm/entry_arch.h b/arch/x86/include/asm/entry_arch.h index dc5fa661465f..e657219d7964 100644 --- a/arch/x86/include/asm/entry_arch.h +++ b/arch/x86/include/asm/entry_arch.h | |||
@@ -13,6 +13,7 @@ | |||
13 | BUILD_INTERRUPT(reschedule_interrupt,RESCHEDULE_VECTOR) | 13 | BUILD_INTERRUPT(reschedule_interrupt,RESCHEDULE_VECTOR) |
14 | BUILD_INTERRUPT(call_function_interrupt,CALL_FUNCTION_VECTOR) | 14 | BUILD_INTERRUPT(call_function_interrupt,CALL_FUNCTION_VECTOR) |
15 | BUILD_INTERRUPT(call_function_single_interrupt,CALL_FUNCTION_SINGLE_VECTOR) | 15 | BUILD_INTERRUPT(call_function_single_interrupt,CALL_FUNCTION_SINGLE_VECTOR) |
16 | BUILD_INTERRUPT(pull_timers_interrupt,PULL_TIMERS_VECTOR) | ||
16 | BUILD_INTERRUPT3(irq_move_cleanup_interrupt, IRQ_MOVE_CLEANUP_VECTOR, | 17 | BUILD_INTERRUPT3(irq_move_cleanup_interrupt, IRQ_MOVE_CLEANUP_VECTOR, |
17 | smp_irq_move_cleanup_interrupt) | 18 | smp_irq_move_cleanup_interrupt) |
18 | BUILD_INTERRUPT3(reboot_interrupt, REBOOT_VECTOR, smp_reboot_interrupt) | 19 | BUILD_INTERRUPT3(reboot_interrupt, REBOOT_VECTOR, smp_reboot_interrupt) |
diff --git a/arch/x86/include/asm/hw_irq.h b/arch/x86/include/asm/hw_irq.h index e9571ddabc4f..3e860d1f9416 100644 --- a/arch/x86/include/asm/hw_irq.h +++ b/arch/x86/include/asm/hw_irq.h | |||
@@ -77,6 +77,8 @@ extern asmlinkage void threshold_interrupt(void); | |||
77 | extern asmlinkage void call_function_interrupt(void); | 77 | extern asmlinkage void call_function_interrupt(void); |
78 | extern asmlinkage void call_function_single_interrupt(void); | 78 | extern asmlinkage void call_function_single_interrupt(void); |
79 | 79 | ||
80 | extern asmlinkage void pull_timers_interrupt(void); | ||
81 | |||
80 | #ifdef CONFIG_TRACING | 82 | #ifdef CONFIG_TRACING |
81 | /* Interrupt handlers registered during init_IRQ */ | 83 | /* Interrupt handlers registered during init_IRQ */ |
82 | extern void trace_apic_timer_interrupt(void); | 84 | extern void trace_apic_timer_interrupt(void); |
@@ -89,6 +91,7 @@ extern void trace_reschedule_interrupt(void); | |||
89 | extern void trace_threshold_interrupt(void); | 91 | extern void trace_threshold_interrupt(void); |
90 | extern void trace_call_function_interrupt(void); | 92 | extern void trace_call_function_interrupt(void); |
91 | extern void trace_call_function_single_interrupt(void); | 93 | extern void trace_call_function_single_interrupt(void); |
94 | extern void trace_pull_timers_interrupt(void); | ||
92 | #define trace_irq_move_cleanup_interrupt irq_move_cleanup_interrupt | 95 | #define trace_irq_move_cleanup_interrupt irq_move_cleanup_interrupt |
93 | #define trace_reboot_interrupt reboot_interrupt | 96 | #define trace_reboot_interrupt reboot_interrupt |
94 | #define trace_kvm_posted_intr_ipi kvm_posted_intr_ipi | 97 | #define trace_kvm_posted_intr_ipi kvm_posted_intr_ipi |
@@ -179,6 +182,7 @@ extern __visible void smp_reschedule_interrupt(struct pt_regs *); | |||
179 | extern __visible void smp_call_function_interrupt(struct pt_regs *); | 182 | extern __visible void smp_call_function_interrupt(struct pt_regs *); |
180 | extern __visible void smp_call_function_single_interrupt(struct pt_regs *); | 183 | extern __visible void smp_call_function_single_interrupt(struct pt_regs *); |
181 | extern __visible void smp_invalidate_interrupt(struct pt_regs *); | 184 | extern __visible void smp_invalidate_interrupt(struct pt_regs *); |
185 | extern __visible void smp_pull_timers_interrupt(struct pt_regs *); | ||
182 | #endif | 186 | #endif |
183 | 187 | ||
184 | extern char irq_entries_start[]; | 188 | extern char irq_entries_start[]; |
diff --git a/arch/x86/include/asm/irq_vectors.h b/arch/x86/include/asm/irq_vectors.h index 666c89ec4bd7..82545836e1a1 100644 --- a/arch/x86/include/asm/irq_vectors.h +++ b/arch/x86/include/asm/irq_vectors.h | |||
@@ -124,6 +124,12 @@ | |||
124 | */ | 124 | */ |
125 | #define LOCAL_TIMER_VECTOR 0xef | 125 | #define LOCAL_TIMER_VECTOR 0xef |
126 | 126 | ||
127 | /* | ||
128 | * LITMUS^RT pull timers IRQ vector. | ||
129 | * Make sure it's not used by Linux. | ||
130 | */ | ||
131 | #define PULL_TIMERS_VECTOR 0xdf | ||
132 | |||
127 | #define NR_VECTORS 256 | 133 | #define NR_VECTORS 256 |
128 | 134 | ||
129 | #ifdef CONFIG_X86_LOCAL_APIC | 135 | #ifdef CONFIG_X86_LOCAL_APIC |