Hi,
This is the current state of my testing/next tree. There a are a few
minor tweaks and fixes that I've picked up. The majority of the new
code adds testing for the gdb stub when used via KVM. There are two
approaches.
The first is an attempt to work just with the default bios code. It's
a little limited and I'm not super happy with the "special" heuristics
due to the fragility but it does work without symbols.
As a result I spoke to Anders who handles the tuxrun images and he was
able to turn on debugging symbols and provide a vmlinux alongside the
bootable image. With these updates I was able to resurrect the old
test script I was running by hand and then plumb it into a functional
test.
So far I've only done x86_64 but if people are happy with the result
I'll do the remaining KVM hosts and test the ones where I can (do we
have a riscv kvm host anywhere?).
The reason I went on the side-quest is because when working on
cleaning up QEMU's internal KVM api I realised that quite a large
chunk of it is not exercised by our functional tests. This would
ensure that at least:
kvm_arch_update_guest_debug
kvm_arch_get_registers
kvm_arch_set_registers
is exercised and I'm less likely to break things in my r-factor ;-)
Alex.
Alex Bennée (12):
tests/functional: test_acpi_bits requires TCG
tests/functional: add migration diagnostics and pace nvme activity
(HACK!)
meson: move gdb detection into the top level build file
tests/functional: add basic gdbstub test for KVM
tests/functional: allow tuxrun tests to be passed "accel"
tests/functional: split x86_64 tuxrun into tcg and kvm run
tests/functional: split aarch64 tuxrun into tcg and kvm run
tests/functional: update x86_64 tuxrun images
tests/guest-debug: add --kargs option to run-test
tests/guest-debug: add --symbols option to run-test
tests/functional: teach tuxrun about launching gdb tests
tests/functional: add tuxrun kvm gdb test for x86_64
Max Filippov (1):
tests/tcg: fix buffer overflow in multiarch/linux/linux-sigrtminmax
meson.build | 15 +-
tests/tcg/multiarch/linux/linux-sigrtminmax.c | 2 +-
tests/functional/aarch64/test_tuxrun.py | 10 ++
.../functional/gdb-scripts/kernel_gdb_test.py | 157 ++++++++++++++++++
.../functional/gdb-scripts/kvm_fw_gdb_test.py | 119 +++++++++++++
tests/functional/meson.build | 5 +-
tests/functional/migration.py | 37 ++++-
tests/functional/qemu_test/tuxruntest.py | 99 +++++++++--
tests/functional/x86_64/meson.build | 1 +
tests/functional/x86_64/test_acpi_bits.py | 2 +
tests/functional/x86_64/test_kvm_gdbstub.py | 55 ++++++
.../functional/x86_64/test_nvme_migration.py | 1 +
tests/functional/x86_64/test_tuxrun.py | 45 ++++-
tests/guest-debug/run-test.py | 10 ++
tests/tcg/meson.build | 5 -
15 files changed, 523 insertions(+), 40 deletions(-)
create mode 100644 tests/functional/gdb-scripts/kernel_gdb_test.py
create mode 100644 tests/functional/gdb-scripts/kvm_fw_gdb_test.py
create mode 100755 tests/functional/x86_64/test_kvm_gdbstub.py
--
2.47.3