[PATCH 2/2] test.py: check ubconfig exists before using it
Simon Glass
sjg at chromium.org
Tue Nov 25 23:14:57 CET 2025
Hi David,
On Fri, 21 Nov 2025 at 07:36, David Lechner <dlechner at baylibre.com> wrote:
>
> Add a check in the show_timings() function of test/py/test.py to ensure
> that the global `ubconfig` variable was actually created before trying
> use it.
>
> If tests fail early, e.g. because --build failed, ubconfig may not have
> been created yet and results in an exception in an atexit handler.
> Adding this check avoids unnecessary noise in the output.
>
> Exception ignored in atexit callback: <function cleanup at 0x7de475ea6b60>
> Traceback (most recent call last):
> File "u-boot/test/py/conftest.py", line 669, in cleanup
> show_timings()
> File "u-boot/test/py/conftest.py", line 616, in show_timings
> if ubconfig.timing:
> ^^^^^^^^
> NameError: name 'ubconfig' is not defined
>
> Signed-off-by: David Lechner <dlechner at baylibre.com>
> ---
> test/py/conftest.py | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/test/py/conftest.py b/test/py/conftest.py
> index 8ce680a92a0c37f36489b0782921d6cf4078850d..f889e3d3ae26db3ae19f79e236a281471d4b6de9 100644
> --- a/test/py/conftest.py
> +++ b/test/py/conftest.py
> @@ -613,7 +613,7 @@ def show_timings():
> if too_long:
> show_bar(f'>{get_time_delta(max_dur)}', too_long_msecs, too_long)
> log.info(buf.getvalue())
> - if ubconfig.timing:
> + if "ubconfig" in globals() and ubconfig.timing:
> print(buf.getvalue(), end='')
Please put 'ubconfig = None' at the top of the file, then this can be:
if ubconfig.timing:
Regards,
Simon
More information about the U-Boot
mailing list