Hi Daniel!
On 8/26/25 12:22, Daniel P. Berrangé wrote:
On Tue, Aug 26, 2025 at 03:10:42PM +0100, Daniel P. Berrangé wrote:
On Tue, Aug 26, 2025 at 09:51:27AM +0200, Thomas Huth wrote:
On 25/08/2025 16.04, Gustavo Romero wrote:
Hello, Thomas!
On 8/25/25 07:29, Thomas Huth wrote:
On 19/08/2025 16.39, Gustavo Romero wrote:
The goal of this series is to remove Avocado as a dependency for running
the reverse_debugging functional test.
This test, the last one I’m aware of that relies on Avocado, requires it
because of the need for GDB to test reverse stepping and continue.
...
I gave it a try, but this did not work for me, the test was not run
at all anymore. Are there any patches needed on top?
hmm that's odd. I'm able to run it with 'make check-functional' and with
'meson test'...
This is how I'm running it (let me know if I'm missing something):
...
gromero@gromero0:/mnt/git/qemu_$
gromero@gromero0:/mnt/git/qemu_/build$ ../configure
--target-list=aarch64- softmmu --disable-docs
gromero@gromero0:/mnt/git/qemu_/build$ make -j 32
gromero@gromero0:/mnt/git/qemu_/build$ time make -j 15 check-functional
[1/2] Generating tests/functional/func-precache-aarch64-
aarch64_reverse_debug with a custom command (wrapped by meson to set
env)
2025-08-25 12:50:04,215 - qemu-test - INFO - Attempting to cache '/home/
gromero/.cache/qemu/
download/7e1430b81c26bdd0da025eeb8fbd77b5dc961da4364af26e771bd39f379cbbf7'
2025-08-25 12:50:04,225 - qemu-test - DEBUG - Using cached asset /home/
gromero/.cache/qemu/
download/7e1430b81c26bdd0da025eeb8fbd77b5dc961da4364af26e771bd39f379cbbf7
for
https://archives.fedoraproject.org/pub/archive/fedora/linux/releases/29/
Everything/aarch64/os/images/pxeboot/vmlinuz
GDB CMD: /usr/bin/gdb-multiarch -q -n -batch -ex 'set pagination off'
-ex 'set confirm off' -ex "py
sys.argv=['/mnt/git/qemu_/tests/functional/
test_aarch64_reverse_debug.py']" -x /mnt/git/qemu_/tests/functional/
test_aarch64_reverse_debug.py
[0/1] Running external command precache-functional (wrapped by meson to
set env)
make[1]: Entering directory '/mnt/git/qemu_/build'
[1/6] Generating qemu-version.h with a custom command (wrapped by meson
to capture output)
/mnt/git/qemu_/build/pyvenv/bin/meson test --no-rebuild -t 1 --setup
thorough --num-processes 10 --print-errorlogs --suite func --suite
func- quick --suite func-thorough
1/27 qemu:func-thorough+func-aarch64-thorough+thorough / func-aarch64-
aarch64_virt_gpu SKIP 1.95s 0 subtests
passed
I tried a couple of times now, and finally realized that it's the
"gdb-multiarch" binary that is missing on Fedora. And as far as I can see,
there is also no package that provides this on Fedora? So if we go ahead
with your patches, this test will only run on certain distros that provide
this binary.
'gdb-multiarch' is a command name invented by Debian.
On Fedora, the regular 'gdb' binary is built with support for
multiple architectures for the purpose of remote debugging.
The set of archs supported by GDB in Fedora is
s390-linux-gnu
powerpc-linux-gnu
arm-linux-gnu
aarch64-linux-gnu
riscv64-linux-gnu
x86_64-redhat-linux-gnu
you can query this with 'gdb --configuration' and parsing the
'--enable-targets' args - I've not found a better way :-(
Thanks a lot for checking it closely.
We already detect it via:
source_path/scripts/probe-gdb-support.py
in configure to detect the arches. That's what Alex is suggesting,
to use the gdb from configure in the test harness or scripts that
rely on GDB.
Cheers,
Gustavo