On Thu, 5 Jun 2025 18:24:08 +0530 Naresh Kamboju naresh.kamboju@linaro.org wrote:
Regression while running LTP tracing on the Linux next-20250604 and next-20250605 the following kernel warnings found on the qemu-riscv64.
Regressions found on qemu-riscv64
- LTP tracing
Regression Analysis:
- New regression? Yes
- Reproducibility? Yes
First seen on the next-20250604 Good: next-20250603 Bad: next-20250604
Test regression: qemu-riscv64 ltp tracing warning kernel trace trace.c
Does riscv64 place __func__ in rodata? If not, this may consider the string unsafe to use in an event.
ignore_event
Reported-by: Linux Kernel Functional Testing lkft@linaro.org
## Test error
------------[ cut here ]------------ [ 28.134981] event 'ma_read' has unsafe pointer field 'fn'
In lib/maple_tree.c we have:
trace_ma_read(__func__, &mas);
Where it records the address of "__func__" into the ring buffer 'fn' field.
At a much later time (when the ring buffer is read), that pointer is dereferenced. As rodata doesn't change for the life of the kernel, it is safe to dereference. But if riscv doesn't place __func__ into rodata, this will be considered unsafe to use.
-- Steve