In the current state the trace functionality is not usable. With CONFIG_TRACE=y not even QEMU can boot.
With this series CONFIG_TRACE becomes usable on qemu-riscv64_smode_defconfig. It all starts with correcting the handling of recursive calls to the measuring functions at the entry and exit points. When a function is entered we record the time and reading the timer leads to a recursion which should not switch of recording traces but just be ignored. The meminfo patches are in the series because the output of the meminfo command depends on CONFIG_TRACE. Also the Pythontrace test does not consider that output depends on configuration. There are still issues with qemu-x86_64_defconfig when trying to trace. But I would like to collect early feedback. Thanks to Patrick Rudolph for pointing to his issues with tracing. Heinrich Schuchardt (8): trace: correct handling of recursive call trace: initr_trace must succeed initr_dm test: test_trace: remove invalid assert trace: increase TRACE_CALL_DEPTH_LIMIT cmd/meminfo: display of addresses above 4 GiB test: cmd: consider configuration in meminfo test test: initf_malloc is only traced with EARLY_TRACE test: clean up test_trace.py code cmd/meminfo.c | 8 ++--- common/board_r.c | 2 +- lib/Kconfig | 2 +- lib/trace.c | 59 +++++++++++++++++-------------------- test/cmd/meminfo.c | 20 +++++++++---- test/py/tests/test_trace.py | 52 +++++++++++++------------------- 6 files changed, 68 insertions(+), 75 deletions(-) -- 2.51.0

