tests: Gently exit from GDB when tests complete
authorGustavo Romero <gustavo.romero@linaro.org>
Wed, 15 May 2024 17:31:31 +0000 (17:31 +0000)
committerPhilippe Mathieu-Daudé <philmd@linaro.org>
Fri, 17 May 2024 14:49:04 +0000 (16:49 +0200)
commit93a3048dcf4565c73f2aa1d751f7197e296f1f1f
tree4f229302331809c3c7c79c99ed31c9f8395aad02
parente68dcbb07923df0886802727edc3b21a10b0d342
tests: Gently exit from GDB when tests complete

GDB commit a207f6b3a38 ('Rewrite "python" command exception handling')
changed how exit() called from Python scripts loaded by GDB behave,
turning it into an exception instead of a generic error code that is
returned. This change caused several QEMU tests to crash with the
following exception:

Python Exception <class 'SystemExit'>: 0
Error occurred in Python: 0

This happens because in tests/guest-debug/test_gdbstub.py exit is
called after the tests have completed.

This commit fixes it by politely asking GDB to exit via gdb.execute,
passing the proper fail_count to be reported to 'make', instead of
abruptly calling exit() from the Python script.

Signed-off-by: Gustavo Romero <gustavo.romero@linaro.org>
Reviewed-by: Philippe Mathieu-Daudé <philmd@linaro.org>
Message-ID: <20240515173132.2462201-4-gustavo.romero@linaro.org>
Signed-off-by: Philippe Mathieu-Daudé <philmd@linaro.org>
tests/guest-debug/test_gdbstub.py