* [PATCH 0/3] tracing: Fix simple_ring_buffer symbol checking on parisc and sparc64
@ 2026-09-23 7:42 Vincent Donnefort
2026-09-23 7:42 ` [PATCH 1/3] tracing: Fix empty symbol names in simple_ring_buffer undef check Vincent Donnefort
` (2 more replies)
0 siblings, 3 replies; 7+ messages in thread
From: Vincent Donnefort @ 2026-09-23 7:42 UTC (permalink / raw)
To: rostedt, mhiramat, linux-trace-kernel
Cc: mathieu.desnoyers, kernel-team, linux-kernel, Vincent Donnefort
Here's a series of fixes following Guenter report [1] of build
failures on parisc and sparc64 with allmodconfigs.
[1] https://lore.kernel.org/all/5574c9e6-9ed2-4ee6-a2b2-fb6ee81e83a1@roeck-us.net/
Vincent Donnefort (3):
tracing: Fix empty symbol names in simple_ring_buffer undef check
tracing: Fix simple_ring_buffer undef check on parisc
tracing: Fix simple_ring_buffer undef check on sparc64
kernel/trace/Makefile | 5 +++--
kernel/trace/undefsyms_base.c | 5 ++++-
2 files changed, 7 insertions(+), 3 deletions(-)
base-commit: 93f51579e7df248780214094418f205253383cc5
--
2.55.0.1082.g2b9226bbc0-goog
^ permalink raw reply [flat|nested] 7+ messages in thread
* [PATCH 1/3] tracing: Fix empty symbol names in simple_ring_buffer undef check
2026-09-23 7:42 [PATCH 0/3] tracing: Fix simple_ring_buffer symbol checking on parisc and sparc64 Vincent Donnefort
@ 2026-09-23 7:42 ` Vincent Donnefort
2026-09-25 2:31 ` Guenter Roeck
2026-09-23 7:42 ` [PATCH 2/3] tracing: Fix simple_ring_buffer undef check on parisc Vincent Donnefort
2026-09-23 7:42 ` [PATCH 3/3] tracing: Fix simple_ring_buffer undef check on sparc64 Vincent Donnefort
2 siblings, 1 reply; 7+ messages in thread
From: Vincent Donnefort @ 2026-09-23 7:42 UTC (permalink / raw)
To: rostedt, mhiramat, linux-trace-kernel
Cc: mathieu.desnoyers, kernel-team, linux-kernel, Vincent Donnefort,
Guenter Roeck
Sparc64 emits empty symmbol names. Skips them when establishing the
allowlist and when extracing undefined symbols.
Fixes: 1211907ac0b5 ("tracing: Generate undef symbols allowlist for simple_ring_buffer")
Reported-by: Guenter Roeck <linux@roeck-us.net>
Closes: https://lore.kernel.org/all/5574c9e6-9ed2-4ee6-a2b2-fb6ee81e83a1@roeck-us.net/
Signed-off-by: Vincent Donnefort <vdonnefort@google.com>
---
kernel/trace/Makefile | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/kernel/trace/Makefile b/kernel/trace/Makefile
index f934ff586bd4..0e1846f7dda3 100644
--- a/kernel/trace/Makefile
+++ b/kernel/trace/Makefile
@@ -146,11 +146,11 @@ KASAN_SANITIZE_undefsyms_base.o := y
UNDEFINED_ALLOWLIST = __asan __gcov __kasan __kcsan __hwasan __sancov __sanitizer __tsan __ubsan __msan \
__aeabi_unwind_cpp __s390_indirect_jump __x86_indirect_thunk simple_ring_buffer \
- $(shell $(NM) -u $(obj)/undefsyms_base.o 2>/dev/null | awk '{print $$2}')
+ $(shell $(NM) -u $(obj)/undefsyms_base.o 2>/dev/null | awk '$$2 {print $$2}')
quiet_cmd_check_undefined = NM $<
cmd_check_undefined = \
- undefsyms=$$($(NM) -u $< | grep -v $(addprefix -e , $(UNDEFINED_ALLOWLIST)) || true); \
+ undefsyms=$$($(NM) -u $< | awk '$$2 {print $$2}' | grep -v $(addprefix -e , $(UNDEFINED_ALLOWLIST)) || true); \
if [ -n "$$undefsyms" ]; then \
echo "Unexpected symbols in $<:" >&2; \
echo "$$undefsyms" >&2; \
--
2.55.0.1082.g2b9226bbc0-goog
^ permalink raw reply related [flat|nested] 7+ messages in thread
* [PATCH 2/3] tracing: Fix simple_ring_buffer undef check on parisc
2026-09-23 7:42 [PATCH 0/3] tracing: Fix simple_ring_buffer symbol checking on parisc and sparc64 Vincent Donnefort
2026-09-23 7:42 ` [PATCH 1/3] tracing: Fix empty symbol names in simple_ring_buffer undef check Vincent Donnefort
@ 2026-09-23 7:42 ` Vincent Donnefort
2026-09-25 2:31 ` Guenter Roeck
2026-09-23 7:42 ` [PATCH 3/3] tracing: Fix simple_ring_buffer undef check on sparc64 Vincent Donnefort
2 siblings, 1 reply; 7+ messages in thread
From: Vincent Donnefort @ 2026-09-23 7:42 UTC (permalink / raw)
To: rostedt, mhiramat, linux-trace-kernel
Cc: mathieu.desnoyers, kernel-team, linux-kernel, Vincent Donnefort,
Guenter Roeck
simple_ring_buffer uses local_set() and cmpxchg() on unsigned long. Add
them to undefsyms_base.c to extend the allowlist for the parisc
architecture.
Fixes: 1211907ac0b5 ("tracing: Generate undef symbols allowlist for simple_ring_buffer")
Reported-by: Guenter Roeck <linux@roeck-us.net>
Closes: https://lore.kernel.org/all/5574c9e6-9ed2-4ee6-a2b2-fb6ee81e83a1@roeck-us.net/
Signed-off-by: Vincent Donnefort <vdonnefort@google.com>
---
kernel/trace/undefsyms_base.c | 5 ++++-
1 file changed, 4 insertions(+), 1 deletion(-)
diff --git a/kernel/trace/undefsyms_base.c b/kernel/trace/undefsyms_base.c
index e65baf58e6ff..37310baf706b 100644
--- a/kernel/trace/undefsyms_base.c
+++ b/kernel/trace/undefsyms_base.c
@@ -9,6 +9,7 @@
#include <linux/atomic.h>
#include <linux/string.h>
+#include <asm/local.h>
#include <asm/page.h>
void undefsyms_base(void *p, int n);
@@ -18,11 +19,13 @@ static char page[PAGE_SIZE] __aligned(PAGE_SIZE);
void undefsyms_base(void *p, int n)
{
char buffer[256] = { 0 };
-
u32 u = 0;
+
memset((char * volatile)page, 8, PAGE_SIZE);
memset((char * volatile)buffer, 8, sizeof(buffer));
memcpy((void * volatile)p, buffer, sizeof(buffer));
cmpxchg((u32 * volatile)&u, 0, 8);
+ cmpxchg((unsigned long *)p, 0, 8);
+ local_set((local_t *)p, 8);
WARN_ON(n == 0xdeadbeef);
}
--
2.55.0.1082.g2b9226bbc0-goog
^ permalink raw reply related [flat|nested] 7+ messages in thread
* [PATCH 3/3] tracing: Fix simple_ring_buffer undef check on sparc64
2026-09-23 7:42 [PATCH 0/3] tracing: Fix simple_ring_buffer symbol checking on parisc and sparc64 Vincent Donnefort
2026-09-23 7:42 ` [PATCH 1/3] tracing: Fix empty symbol names in simple_ring_buffer undef check Vincent Donnefort
2026-09-23 7:42 ` [PATCH 2/3] tracing: Fix simple_ring_buffer undef check on parisc Vincent Donnefort
@ 2026-09-23 7:42 ` Vincent Donnefort
2026-09-25 2:31 ` Guenter Roeck
2 siblings, 1 reply; 7+ messages in thread
From: Vincent Donnefort @ 2026-09-23 7:42 UTC (permalink / raw)
To: rostedt, mhiramat, linux-trace-kernel
Cc: mathieu.desnoyers, kernel-team, linux-kernel, Vincent Donnefort,
Guenter Roeck
simple_ring_buffer relies on headers that end up including
<asm/thread_info.h>. On sparc64, this emits the undefined symbol
current_thread_info_reg. Allow this symbol.
Fixes: 1211907ac0b5 ("tracing: Generate undef symbols allowlist for simple_ring_buffer")
Reported-by: Guenter Roeck <linux@roeck-us.net>
Closes: https://lore.kernel.org/all/5574c9e6-9ed2-4ee6-a2b2-fb6ee81e83a1@roeck-us.net/
Signed-off-by: Vincent Donnefort <vdonnefort@google.com>
---
kernel/trace/Makefile | 1 +
1 file changed, 1 insertion(+)
diff --git a/kernel/trace/Makefile b/kernel/trace/Makefile
index 0e1846f7dda3..3860bc53a4be 100644
--- a/kernel/trace/Makefile
+++ b/kernel/trace/Makefile
@@ -146,6 +146,7 @@ KASAN_SANITIZE_undefsyms_base.o := y
UNDEFINED_ALLOWLIST = __asan __gcov __kasan __kcsan __hwasan __sancov __sanitizer __tsan __ubsan __msan \
__aeabi_unwind_cpp __s390_indirect_jump __x86_indirect_thunk simple_ring_buffer \
+ current_thread_info_reg \
$(shell $(NM) -u $(obj)/undefsyms_base.o 2>/dev/null | awk '$$2 {print $$2}')
quiet_cmd_check_undefined = NM $<
--
2.55.0.1082.g2b9226bbc0-goog
^ permalink raw reply related [flat|nested] 7+ messages in thread
* Re: [PATCH 1/3] tracing: Fix empty symbol names in simple_ring_buffer undef check
2026-09-23 7:42 ` [PATCH 1/3] tracing: Fix empty symbol names in simple_ring_buffer undef check Vincent Donnefort
@ 2026-09-25 2:31 ` Guenter Roeck
0 siblings, 0 replies; 7+ messages in thread
From: Guenter Roeck @ 2026-09-25 2:31 UTC (permalink / raw)
To: Vincent Donnefort
Cc: rostedt, mhiramat, linux-trace-kernel, mathieu.desnoyers,
kernel-team, linux-kernel
On Wed, Sep 23, 2026 at 08:42:11AM +0100, Vincent Donnefort wrote:
> Sparc64 emits empty symmbol names. Skips them when establishing the
> allowlist and when extracing undefined symbols.
>
> Fixes: 1211907ac0b5 ("tracing: Generate undef symbols allowlist for simple_ring_buffer")
> Reported-by: Guenter Roeck <linux@roeck-us.net>
> Closes: https://lore.kernel.org/all/5574c9e6-9ed2-4ee6-a2b2-fb6ee81e83a1@roeck-us.net/
> Signed-off-by: Vincent Donnefort <vdonnefort@google.com>
Tested-by: Guenter Roeck <linux@roeck-us.net>
> ---
> kernel/trace/Makefile | 4 ++--
> 1 file changed, 2 insertions(+), 2 deletions(-)
>
> diff --git a/kernel/trace/Makefile b/kernel/trace/Makefile
> index f934ff586bd4..0e1846f7dda3 100644
> --- a/kernel/trace/Makefile
> +++ b/kernel/trace/Makefile
> @@ -146,11 +146,11 @@ KASAN_SANITIZE_undefsyms_base.o := y
>
> UNDEFINED_ALLOWLIST = __asan __gcov __kasan __kcsan __hwasan __sancov __sanitizer __tsan __ubsan __msan \
> __aeabi_unwind_cpp __s390_indirect_jump __x86_indirect_thunk simple_ring_buffer \
> - $(shell $(NM) -u $(obj)/undefsyms_base.o 2>/dev/null | awk '{print $$2}')
> + $(shell $(NM) -u $(obj)/undefsyms_base.o 2>/dev/null | awk '$$2 {print $$2}')
>
> quiet_cmd_check_undefined = NM $<
> cmd_check_undefined = \
> - undefsyms=$$($(NM) -u $< | grep -v $(addprefix -e , $(UNDEFINED_ALLOWLIST)) || true); \
> + undefsyms=$$($(NM) -u $< | awk '$$2 {print $$2}' | grep -v $(addprefix -e , $(UNDEFINED_ALLOWLIST)) || true); \
> if [ -n "$$undefsyms" ]; then \
> echo "Unexpected symbols in $<:" >&2; \
> echo "$$undefsyms" >&2; \
> --
> 2.55.0.1082.g2b9226bbc0-goog
>
^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: [PATCH 2/3] tracing: Fix simple_ring_buffer undef check on parisc
2026-09-23 7:42 ` [PATCH 2/3] tracing: Fix simple_ring_buffer undef check on parisc Vincent Donnefort
@ 2026-09-25 2:31 ` Guenter Roeck
0 siblings, 0 replies; 7+ messages in thread
From: Guenter Roeck @ 2026-09-25 2:31 UTC (permalink / raw)
To: Vincent Donnefort
Cc: rostedt, mhiramat, linux-trace-kernel, mathieu.desnoyers,
kernel-team, linux-kernel
On Wed, Sep 23, 2026 at 08:42:12AM +0100, Vincent Donnefort wrote:
> simple_ring_buffer uses local_set() and cmpxchg() on unsigned long. Add
> them to undefsyms_base.c to extend the allowlist for the parisc
> architecture.
>
> Fixes: 1211907ac0b5 ("tracing: Generate undef symbols allowlist for simple_ring_buffer")
> Reported-by: Guenter Roeck <linux@roeck-us.net>
> Closes: https://lore.kernel.org/all/5574c9e6-9ed2-4ee6-a2b2-fb6ee81e83a1@roeck-us.net/
> Signed-off-by: Vincent Donnefort <vdonnefort@google.com>
Tested-by: Guenter Roeck <linux@roeck-us.net>
> ---
> kernel/trace/undefsyms_base.c | 5 ++++-
> 1 file changed, 4 insertions(+), 1 deletion(-)
>
> diff --git a/kernel/trace/undefsyms_base.c b/kernel/trace/undefsyms_base.c
> index e65baf58e6ff..37310baf706b 100644
> --- a/kernel/trace/undefsyms_base.c
> +++ b/kernel/trace/undefsyms_base.c
> @@ -9,6 +9,7 @@
>
> #include <linux/atomic.h>
> #include <linux/string.h>
> +#include <asm/local.h>
> #include <asm/page.h>
>
> void undefsyms_base(void *p, int n);
> @@ -18,11 +19,13 @@ static char page[PAGE_SIZE] __aligned(PAGE_SIZE);
> void undefsyms_base(void *p, int n)
> {
> char buffer[256] = { 0 };
> -
> u32 u = 0;
> +
> memset((char * volatile)page, 8, PAGE_SIZE);
> memset((char * volatile)buffer, 8, sizeof(buffer));
> memcpy((void * volatile)p, buffer, sizeof(buffer));
> cmpxchg((u32 * volatile)&u, 0, 8);
> + cmpxchg((unsigned long *)p, 0, 8);
> + local_set((local_t *)p, 8);
> WARN_ON(n == 0xdeadbeef);
> }
> --
> 2.55.0.1082.g2b9226bbc0-goog
>
^ permalink raw reply [flat|nested] 7+ messages in thread
* Re: [PATCH 3/3] tracing: Fix simple_ring_buffer undef check on sparc64
2026-09-23 7:42 ` [PATCH 3/3] tracing: Fix simple_ring_buffer undef check on sparc64 Vincent Donnefort
@ 2026-09-25 2:31 ` Guenter Roeck
0 siblings, 0 replies; 7+ messages in thread
From: Guenter Roeck @ 2026-09-25 2:31 UTC (permalink / raw)
To: Vincent Donnefort
Cc: rostedt, mhiramat, linux-trace-kernel, mathieu.desnoyers,
kernel-team, linux-kernel
On Wed, Sep 23, 2026 at 08:42:13AM +0100, Vincent Donnefort wrote:
> simple_ring_buffer relies on headers that end up including
> <asm/thread_info.h>. On sparc64, this emits the undefined symbol
> current_thread_info_reg. Allow this symbol.
>
> Fixes: 1211907ac0b5 ("tracing: Generate undef symbols allowlist for simple_ring_buffer")
> Reported-by: Guenter Roeck <linux@roeck-us.net>
> Closes: https://lore.kernel.org/all/5574c9e6-9ed2-4ee6-a2b2-fb6ee81e83a1@roeck-us.net/
> Signed-off-by: Vincent Donnefort <vdonnefort@google.com>
Tested-by: Guenter Roeck <linux@roeck-us.net>
> ---
> kernel/trace/Makefile | 1 +
> 1 file changed, 1 insertion(+)
>
> diff --git a/kernel/trace/Makefile b/kernel/trace/Makefile
> index 0e1846f7dda3..3860bc53a4be 100644
> --- a/kernel/trace/Makefile
> +++ b/kernel/trace/Makefile
> @@ -146,6 +146,7 @@ KASAN_SANITIZE_undefsyms_base.o := y
>
> UNDEFINED_ALLOWLIST = __asan __gcov __kasan __kcsan __hwasan __sancov __sanitizer __tsan __ubsan __msan \
> __aeabi_unwind_cpp __s390_indirect_jump __x86_indirect_thunk simple_ring_buffer \
> + current_thread_info_reg \
> $(shell $(NM) -u $(obj)/undefsyms_base.o 2>/dev/null | awk '$$2 {print $$2}')
>
> quiet_cmd_check_undefined = NM $<
> --
> 2.55.0.1082.g2b9226bbc0-goog
>
^ permalink raw reply [flat|nested] 7+ messages in thread
end of thread, other threads:[~2026-09-25 2:31 UTC | newest]
Thread overview: 7+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2026-09-23 7:42 [PATCH 0/3] tracing: Fix simple_ring_buffer symbol checking on parisc and sparc64 Vincent Donnefort
2026-09-23 7:42 ` [PATCH 1/3] tracing: Fix empty symbol names in simple_ring_buffer undef check Vincent Donnefort
2026-09-25 2:31 ` Guenter Roeck
2026-09-23 7:42 ` [PATCH 2/3] tracing: Fix simple_ring_buffer undef check on parisc Vincent Donnefort
2026-09-25 2:31 ` Guenter Roeck
2026-09-23 7:42 ` [PATCH 3/3] tracing: Fix simple_ring_buffer undef check on sparc64 Vincent Donnefort
2026-09-25 2:31 ` Guenter Roeck
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).