diff options
| author | Andrea Righi <righi.andrea@gmail.com> | 2018-12-06 04:56:48 -0500 |
|---|---|---|
| committer | Ingo Molnar <mingo@kernel.org> | 2018-12-06 10:52:03 -0500 |
| commit | a50480cb6d61d5c5fc13308479407b628b6bc1c5 (patch) | |
| tree | 06335ddee01aaa43e87dd7fccb24c734741c3601 | |
| parent | 43a1b0cb4cd6dbfd3cd9c10da663368394d299d8 (diff) | |
kprobes/x86: Blacklist non-attachable interrupt functions
These interrupt functions are already non-attachable by kprobes.
Blacklist them explicitly so that they can show up in
/sys/kernel/debug/kprobes/blacklist and tools like BCC can use this
additional information.
Signed-off-by: Andrea Righi <righi.andrea@gmail.com>
Cc: Andy Lutomirski <luto@kernel.org>
Cc: Anil S Keshavamurthy <anil.s.keshavamurthy@intel.com>
Cc: Borislav Petkov <bp@alien8.de>
Cc: David S. Miller <davem@davemloft.net>
Cc: Linus Torvalds <torvalds@linux-foundation.org>
Cc: Masami Hiramatsu <mhiramat@kernel.org>
Cc: Naveen N. Rao <naveen.n.rao@linux.vnet.ibm.com>
Cc: Peter Zijlstra <peterz@infradead.org>
Cc: Thomas Gleixner <tglx@linutronix.de>
Cc: Yonghong Song <yhs@fb.com>
Link: http://lkml.kernel.org/r/20181206095648.GA8249@Dell
Signed-off-by: Ingo Molnar <mingo@kernel.org>
| -rw-r--r-- | arch/x86/entry/entry_64.S | 4 |
1 files changed, 4 insertions, 0 deletions
diff --git a/arch/x86/entry/entry_64.S b/arch/x86/entry/entry_64.S index ce25d84023c0..1f0efdb7b629 100644 --- a/arch/x86/entry/entry_64.S +++ b/arch/x86/entry/entry_64.S | |||
| @@ -566,6 +566,7 @@ ENTRY(interrupt_entry) | |||
| 566 | 566 | ||
| 567 | ret | 567 | ret |
| 568 | END(interrupt_entry) | 568 | END(interrupt_entry) |
| 569 | _ASM_NOKPROBE(interrupt_entry) | ||
| 569 | 570 | ||
| 570 | 571 | ||
| 571 | /* Interrupt entry/exit. */ | 572 | /* Interrupt entry/exit. */ |
| @@ -766,6 +767,7 @@ native_irq_return_ldt: | |||
| 766 | jmp native_irq_return_iret | 767 | jmp native_irq_return_iret |
| 767 | #endif | 768 | #endif |
| 768 | END(common_interrupt) | 769 | END(common_interrupt) |
| 770 | _ASM_NOKPROBE(common_interrupt) | ||
| 769 | 771 | ||
| 770 | /* | 772 | /* |
| 771 | * APIC interrupts. | 773 | * APIC interrupts. |
| @@ -780,6 +782,7 @@ ENTRY(\sym) | |||
| 780 | call \do_sym /* rdi points to pt_regs */ | 782 | call \do_sym /* rdi points to pt_regs */ |
| 781 | jmp ret_from_intr | 783 | jmp ret_from_intr |
| 782 | END(\sym) | 784 | END(\sym) |
| 785 | _ASM_NOKPROBE(\sym) | ||
| 783 | .endm | 786 | .endm |
| 784 | 787 | ||
| 785 | /* Make sure APIC interrupt handlers end up in the irqentry section: */ | 788 | /* Make sure APIC interrupt handlers end up in the irqentry section: */ |
| @@ -960,6 +963,7 @@ ENTRY(\sym) | |||
| 960 | 963 | ||
| 961 | jmp error_exit | 964 | jmp error_exit |
| 962 | .endif | 965 | .endif |
| 966 | _ASM_NOKPROBE(\sym) | ||
| 963 | END(\sym) | 967 | END(\sym) |
| 964 | .endm | 968 | .endm |
| 965 | 969 | ||
