Thread (21 messages) 21 messages, 5 authors, 2023-05-17

Re: [PATCH v2 2/4] fprobe: make fprobe_kprobe_handler recursion free

From: Ze Gao <hidden>
Date: 2023-05-16 09:51:57
Also in: bpf, linux-riscv, linux-s390, lkml

Sorry for paste the wrong link, it's this one instead:
  Link: https://lore.kernel.org/bpf/20230513001757.75ae0d1b@rorschach.local.home/ (local)

It's the original discussions of this problem.

Regards,
Ze

On Tue, May 16, 2023 at 5:47 PM Ze Gao [off-list ref] wrote:
Precisely, these that are called within kprobe_busy_{begin, end},
which the previous patch does not resolve.
I will refine the commit message to make it clear.

FYI, details can checked out here:
    Link: https://lore.kernel.org/linux-trace-kernel/20230516132516.c902edcf21028874a74fb868@kernel.org/ (local)

Regards,
Ze

On Tue, May 16, 2023 at 5:18 PM Peter Zijlstra [off-list ref] wrote:
quoted
On Tue, May 16, 2023 at 03:18:28PM +0800, Ze Gao wrote:
quoted
Current implementation calls kprobe related functions before doing
ftrace recursion check in fprobe_kprobe_handler, which opens door
to kernel crash due to stack recursion if preempt_count_{add, sub}
is traceable.
Which preempt_count*() are you referring to? The ones you just made
_notrace in the previous patch?
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help