* Masami Hiramatsu <[email protected]> wrote:
> Jprobe actually doesn't need to disable IRQs while calling
> handlers, because Documentation/kprobes.txt says:
>
> -----
> Probe handlers are run with preemption disabled. Depending on the
> architecture and optimization state, handlers may also run with
> interrupts disabled (e.g., kretprobe handlers and optimized kprobe
> handlers run without interrupt disabled on x86/x86-64).
> -----
>
> So let's remove IRQ disabling from jprobes too.
>
> Signed-off-by: Masami Hiramatsu <[email protected]>
> ---
> arch/x86/kernel/kprobes/core.c | 2 --
> 1 file changed, 2 deletions(-)
>
> diff --git a/arch/x86/kernel/kprobes/core.c b/arch/x86/kernel/kprobes/core.c
> index b48e0efd668e..bd36f3c33cd0 100644
> --- a/arch/x86/kernel/kprobes/core.c
> +++ b/arch/x86/kernel/kprobes/core.c
> @@ -1099,8 +1099,6 @@ int setjmp_pre_handler(struct kprobe *p, struct pt_regs
> *regs)
> * raw stack chunk with redzones:
> */
> __memcpy(kcb->jprobes_stack, (kprobe_opcode_t *)addr,
> MIN_STACK_SIZE(addr));
> - regs->flags &= ~X86_EFLAGS_IF;
> - trace_hardirqs_off();
> regs->ip = (unsigned long)(jp->entry);
>
> /*
Could you please also do a patch that disables jprobes permanently, in
preparation
of eventually removing them later?
Thanks,
Ingo