From: Thomas Huth Date: Fri, 28 Nov 2025 13:39:49 +0000 (+0100) Subject: tests/functional/s390x: Add reverse debugging test for s390x X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=f397b7652dac77bf24a491dfee8def59a5d2591f;p=thirdparty%2Fqemu.git tests/functional/s390x: Add reverse debugging test for s390x We just have to make sure that we can set the endianness to big endian, then we can also run this test on s390x. Reviewed-by: Ilya Leoshkevich Signed-off-by: Thomas Huth Message-ID: <20251128133949.181828-1-thuth@redhat.com> --- diff --git a/tests/functional/reverse_debugging.py b/tests/functional/reverse_debugging.py index 86fca8d81f..8b9507674a 100644 --- a/tests/functional/reverse_debugging.py +++ b/tests/functional/reverse_debugging.py @@ -64,7 +64,7 @@ class ReverseDebugging(LinuxKernelTest): @skipIfMissingImports("pygdbmi") # Required by GDB class @skipIfMissingEnv("QEMU_TEST_GDB") - def reverse_debugging(self, gdb_arch, shift=7, args=None): + def reverse_debugging(self, gdb_arch, shift=7, args=None, big_endian=False): from qemu_test import GDB # create qcow2 for snapshots @@ -99,6 +99,8 @@ class ReverseDebugging(LinuxKernelTest): gdb_cmd = os.getenv('QEMU_TEST_GDB') gdb = GDB(gdb_cmd) try: + if big_endian: + gdb.cli("set endian big") self.reverse_debugging_run(gdb, vm, port, gdb_arch, last_icount) finally: self.log.info('exiting gdb and qemu') diff --git a/tests/functional/s390x/meson.build b/tests/functional/s390x/meson.build index 70cd36e291..0f03e1c9db 100644 --- a/tests/functional/s390x/meson.build +++ b/tests/functional/s390x/meson.build @@ -6,6 +6,7 @@ test_s390x_timeouts = { tests_s390x_system_quick = [ 'vmstate', + 'reverse_debug', ] tests_s390x_system_thorough = [ diff --git a/tests/functional/s390x/test_reverse_debug.py b/tests/functional/s390x/test_reverse_debug.py new file mode 100755 index 0000000000..0767dc9167 --- /dev/null +++ b/tests/functional/s390x/test_reverse_debug.py @@ -0,0 +1,21 @@ +#!/usr/bin/env python3 +# +# SPDX-License-Identifier: GPL-2.0-or-later +# +''' +Reverse debugging test for s390x +''' + +from reverse_debugging import ReverseDebugging + + +class ReverseDebuggingS390x(ReverseDebugging): + + def test_revdbg(self): + self.set_machine('s390-ccw-virtio') + self.reverse_debugging(gdb_arch='s390:64-bit', shift=6, + big_endian=True, args=('-no-shutdown',)) + + +if __name__ == '__main__': + ReverseDebugging.main()