Re: [PATCH] kprobes: x86_64: blacklist non-attachable interrupt functions

From: Masami Hiramatsu
Date: Fri Dec 07 2018 - 09:47:37 EST


On Thu, 6 Dec 2018 10:56:48 +0100
Andrea Righi <righi.andrea@xxxxxxxxx> wrote:

> 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@xxxxxxxxx>

For the short term, this is OK. But this is not the best way to cover
other functions which are also prohibited by arch_within_kprobe_blacklist().
I'll fix this issue later.

Acked-by: Masami Hiramatsu <mhiramat@xxxxxxxxxx>

Thank you,

> ---
> arch/x86/entry/entry_64.S | 4 ++++
> 1 file changed, 4 insertions(+)
>
> 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)
>
> ret
> END(interrupt_entry)
> +_ASM_NOKPROBE(interrupt_entry)
>
>
> /* Interrupt entry/exit. */
> @@ -766,6 +767,7 @@ native_irq_return_ldt:
> jmp native_irq_return_iret
> #endif
> END(common_interrupt)
> +_ASM_NOKPROBE(common_interrupt)
>
> /*
> * APIC interrupts.
> @@ -780,6 +782,7 @@ ENTRY(\sym)
> call \do_sym /* rdi points to pt_regs */
> jmp ret_from_intr
> END(\sym)
> +_ASM_NOKPROBE(\sym)
> .endm
>
> /* Make sure APIC interrupt handlers end up in the irqentry section: */
> @@ -960,6 +963,7 @@ ENTRY(\sym)
>
> jmp error_exit
> .endif
> +_ASM_NOKPROBE(\sym)
> END(\sym)
> .endm
>
> --
> 2.17.1


--
Masami Hiramatsu <mhiramat@xxxxxxxxxx>