summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJonathan Wiepert <jonathan.wiepert@gmail.com>2025-04-24 18:14:57 -0400
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>2025-06-19 15:31:45 +0200
commitcc26bc26bebb133d951882ea7260a2d03d157572 (patch)
tree94810e0fb0f77e99ac0c41a3caaab3d4e046da25
parent30d80c636ec07cb595e190e51a7a9de113ae2b2d (diff)
Use thread-safe function pointer in libbpf_print
[ Upstream commit 91dbac4076537b464639953c055c460d2bdfc7ea ] This patch fixes a thread safety bug where libbpf_print uses the global variable storing the print function pointer rather than the local variable that had the print function set via __atomic_load_n. Fixes: f1cb927cdb62 ("libbpf: Ensure print callback usage is thread-safe") Signed-off-by: Jonathan Wiepert <jonathan.wiepert@gmail.com> Signed-off-by: Andrii Nakryiko <andrii@kernel.org> Acked-by: Mykyta Yatsenko <mykyta.yatsenko5@gmail.com> Link: https://lore.kernel.org/bpf/20250424221457.793068-1-jonathan.wiepert@gmail.com Signed-off-by: Sasha Levin <sashal@kernel.org>
-rw-r--r--tools/lib/bpf/libbpf.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/tools/lib/bpf/libbpf.c b/tools/lib/bpf/libbpf.c
index c6eceae4d6ff6..bb24f6bac2073 100644
--- a/tools/lib/bpf/libbpf.c
+++ b/tools/lib/bpf/libbpf.c
@@ -285,7 +285,7 @@ void libbpf_print(enum libbpf_print_level level, const char *format, ...)
old_errno = errno;
va_start(args, format);
- __libbpf_pr(level, format, args);
+ print_fn(level, format, args);
va_end(args);
errno = old_errno;