Thread (10 messages) flat view 10 messages, 3 authors, 2025-02-26

Re: [PATCH v3 5/5] selftests/ftrace: Update fprobe test to check enabled_functions file

From: Steven Rostedt <rostedt@goodmis.org>
Date: 2025-02-26 13:47:20
Also in: lkml

On Wed, 26 Feb 2025 11:50:28 +0100
Heiko Carstens [off-list ref] wrote:
Bah.. :) this doesn't work always, since at least with Fedora 41 the
assumption that there are zero enabled functions before this test is
executed is not necessarily true:

# cat tracing/enabled_functions 
free_user_ns (1) R         
bpf_lsm_path_mkdir (1) R   D   M        tramp: ftrace_regs_caller+0x0/0x68 (call_direct_funcs+0x0/0x20)
        direct-->bpf_trampoline_6442505669+0x0/0x148
bpf_lsm_path_mknod (1) R   D   M        tramp: ftrace_regs_caller+0x0/0x68 (call_direct_funcs+0x0/0x20)
        direct-->bpf_trampoline_6442505671+0x0/0x14e
After I submitted the patches, I then remembered that some user space tools
add BPF programs that attach to functions, and those will show up in the
enabled_functions table (that's a feature as it is always good to know what
is modifying your kernel!). And I figured it will break this test.

I decided to wait until someone complains about it before fixing it ;-)
...

I didn't stumble across this before, since I tried a monolithic kernel
without modules when verifying your series; and then there aren't any
enabled functions. But with modules there are.

This could be worked around for example with something like the patch
below (against linux-next). But no idea what your preferred way to
handle this would be.
Actually, when I thought about fixing this, your patch is pretty much what
I was thinking of doing.

-- Steve
Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help