[RFC 4/8] trace: increase TRACE_CALL_DEPTH_LIMIT
Simon Glass
sjg at chromium.org
Sat Dec 27 14:45:07 CET 2025
Hi Heinrich,
On Sat, 20 Dec 2025 at 18:59, Heinrich Schuchardt
<heinrich.schuchardt at canonical.com> wrote:
>
> test/py/tests/test_trace.py expects a recorded call depth in excess of 30.
> bootefi hello has a call depth of 42.
> efi_selftest_block_device.c reaches 56.
>
> Let's increase the default for TRACE_CALL_DEPTH_LIMIT to 100.
We can do this, but it will explode the size of the trace buffer. Do
you know what the function call stack looks like in this case?
>
> Signed-off-by: Heinrich Schuchardt <heinrich.schuchardt at canonical.com>
> ---
> lib/Kconfig | 2 +-
> test/py/tests/test_trace.py | 2 +-
> 2 files changed, 2 insertions(+), 2 deletions(-)
>
> diff --git a/lib/Kconfig b/lib/Kconfig
> index fe0b878a206..3f175fde7b1 100644
> --- a/lib/Kconfig
> +++ b/lib/Kconfig
> @@ -415,7 +415,7 @@ config TRACE_BUFFER_SIZE
> config TRACE_CALL_DEPTH_LIMIT
> int "Trace call depth limit"
> depends on TRACE
> - default 15
> + default 100
> help
> Sets the maximum call depth up to which function calls are recorded.
>
> diff --git a/test/py/tests/test_trace.py b/test/py/tests/test_trace.py
> index 52d6ec6e5d2..7f897e4c366 100644
> --- a/test/py/tests/test_trace.py
> +++ b/test/py/tests/test_trace.py
> @@ -49,7 +49,7 @@ def collect_trace(ubman):
> assert int(vals['maximum observed call depth']) > 30
> assert (vals['call depth limit'] ==
> ubman.config.buildconfig.get('config_trace_call_depth_limit'))
> - assert int(vals['calls not traced due to depth']) > 100000
> + # 'calls not traced due to depth' depends on configuration. Don't check it.
>
> out = ubman.run_command('bootstage report')
> # Accumulated time:
> --
> 2.51.0
>
Regards,
Simon
More information about the U-Boot
mailing list