* Re: [PATCH bpf-next v3 7/9] bpf: expose deferred .BTF.base module BTF in sysfs from module load
[not found] <3541dcaa6eba351d0e66f2c324b2919453a7ad4f1a29170d8ce9b4435feeb0d8@mail.kernel.org>
@ 2026-10-01 23:52 ` Jay Wang
0 siblings, 0 replies; only message in thread
From: Jay Wang @ 2026-10-01 23:52 UTC (permalink / raw)
To: bot+bpf-ci, bpf, ast, daniel, andrii, eddyz87, memxor
Cc: alan.maguire, martin.lau, yonghong.song, jolsa, nathan, nsc,
linux-kbuild, mcgrof, petr.pavlu, samitolvanen, linux-modules,
ojeda, rust-for-linux, arnd, linux-kernel, abuehaze, doebel,
mpohlack, jay.wang.upstream, martin.lau, mason, ihor.solodrai,
rostedt, mhiramat, linux-trace-kernel
Right, fixed in v4 (patch 8/12):
https://lore.kernel.org/bpf/20261001225214.12351-1-wanjay@amazon.com/
The reader no longer loads the vmlinux BTF itself. If it is not there
yet, the reader queues a work item that calls bpf_load_btf_vmlinux(),
and waits for the module's BTF to be published, for @gone, or for the
load attempt to end without the BTF. MODULE_STATE_GOING sets @gone and
wakes before it removes the file, so the drain no longer waits on a
module load: in your cycle the reader returns -ENODEV, the drain
completes, GOING returns, and the kworker's modprobe gets the rwsem once
the writer is done.
On the lock comment, you are right that the btf_module_mutex ->
cand_cache_mutex edge is gone. v4 states what the separate lock does
keep: btf_module_mutex, which the module notifier takes, is never taken
under btf_vmlinux_lock.
Jay
^ permalink raw reply [flat|nested] only message in thread
only message in thread, other threads:[~2026-10-01 23:52 UTC | newest]
Thread overview: (only message) (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
[not found] <3541dcaa6eba351d0e66f2c324b2919453a7ad4f1a29170d8ce9b4435feeb0d8@mail.kernel.org>
2026-10-01 23:52 ` [PATCH bpf-next v3 7/9] bpf: expose deferred .BTF.base module BTF in sysfs from module load Jay Wang
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox