On Tue, Feb 2, 2021 at 11:09 PM Nikolay Borisov <nborisov@xxxxxxxx> wrote: > > > > On 3.02.21 г. 9:06 ч., Alexei Starovoitov wrote: > > From: Alexei Starovoitov <ast@xxxxxxxxxx> > > > > The commit 0d00449c7a28 ("x86: Replace ist_enter() with nmi_enter()") > > converted do_int3 handler to be "NMI-like". > > That made old if (in_nmi()) check abort execution of bpf programs > > attached to kprobe when kprobe is firing via int3 > > (For example when kprobe is placed in the middle of the function). > > Remove the check to restore user visible behavior. > > > > Fixes: 0d00449c7a28 ("x86: Replace ist_enter() with nmi_enter()") > > Reported-by: Nikolay Borisov <nborisov@xxxxxxxx> > > Signed-off-by: Alexei Starovoitov <ast@xxxxxxxxxx> > > Tested-by: Nikolay Borisov <nborisov@xxxxxxxx> > > > So I take it you have verified the callpaths and deemed that it's safe > to remove this check? I stared a lot into different places. It's not pretty. I will follow up with tightening patches for bpf-next, but I couldn't come up with anything better for bpf tree.