Re: kprobes broken since 0d00449c7a28 ("x86: Replace ist_enter() with nmi_enter()")

From: Peter Zijlstra
Date: Sat Jan 30 2021 - 04:23:03 EST


On Fri, Jan 29, 2021 at 04:24:54PM -0500, Steven Rostedt wrote:
> Specifically, kprobe and ftrace callbacks may have this:
>
> if (in_nmi())
> return;
>
> raw_spin_lock_irqsave(&lock, flags);
> [..]
> raw_spin_unlock_irqrestore(&lock, flags);
>
> Which is totally fine to have,

Why? There's a distinct lack of explaining here.

Note that we ripped out all such dodgy locking from kretprobes.