[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[PATCH 00/40] testing and plugin updates for 9.0
From: |
Alex Bennée |
Subject: |
[PATCH 00/40] testing and plugin updates for 9.0 |
Date: |
Thu, 21 Dec 2023 10:37:38 +0000 |
This brings in the first batch of testing updates for the next
release. The main bulk of these is Daniel and Thomas' cleanups of the
qtest timeouts and allowing meson control them. There are a few minor
tweaks I've made to some avocado and gitlab tests.
The big update is support for reading register values in TCG plugins.
After feedback from Akihiko I've left all the smarts to the plugin and
made the interface a simple "all the registers" dump. There is a
follow on patch to make the register code a little more efficient by
checking disassembly. However we can leave the door open for future
API enhancements if the translator ever learns to reliably know when
registers might be touched.
The following still need review:
contrib/plugins: optimise the register value tracking
contrib/plugins: extend execlog to track register changes
contrib/plugins: fix imatch
plugins: add an API to read registers
gdbstub: expose api to find registers
gitlab: include microblazeel in testing
tests/avocado: use snapshot=on in kvm_xen_guest
Akihiko Odaki (15):
hw/riscv: Use misa_mxl instead of misa_mxl_max
target/riscv: Remove misa_mxl validation
target/riscv: Move misa_mxl_max to class
target/riscv: Validate misa_mxl_max only once
target/arm: Use GDBFeature for dynamic XML
target/ppc: Use GDBFeature for dynamic XML
target/riscv: Use GDBFeature for dynamic XML
gdbstub: Use GDBFeature for gdb_register_coprocessor
gdbstub: Use GDBFeature for GDBRegisterState
gdbstub: Change gdb_get_reg_cb and gdb_set_reg_cb
gdbstub: Simplify XML lookup
gdbstub: Infer number of core registers from XML
hw/core/cpu: Remove gdb_get_dynamic_xml member
gdbstub: Add members to identify registers to GDBFeature
plugins: Use different helpers when reading registers
Alex Bennée (8):
tests/avocado: use snapshot=on in kvm_xen_guest
gitlab: include microblazeel in testing
chardev: use bool for fe_is_open
gdbstub: expose api to find registers
plugins: add an API to read registers
contrib/plugins: fix imatch
contrib/plugins: extend execlog to track register changes
contrib/plugins: optimise the register value tracking
Daniel P. Berrangé (12):
qtest: bump min meson timeout to 60 seconds
qtest: bump migration-test timeout to 8 minutes
qtest: bump qom-test timeout to 15 minutes
qtest: bump npcm7xx_pwn-test timeout to 5 minutes
qtest: bump test-hmp timeout to 4 minutes
qtest: bump pxe-test timeout to 10 minutes
qtest: bump prom-env-test timeout to 6 minutes
qtest: bump boot-serial-test timeout to 3 minutes
qtest: bump qos-test timeout to 2 minutes
qtest: bump aspeed_smc-test timeout to 6 minutes
qtest: bump bios-table-test timeout to 9 minutes
mtest2make: stop disabling meson test timeouts
Thomas Huth (5):
tests/avocado: Add a test for a little-endian microblaze machine
tests/qtest: Bump the device-introspect-test timeout to 12 minutes
tests/unit: Bump test-aio-multithread test timeout to 2 minutes
tests/unit: Bump test-crypto-block test timeout to 5 minutes
tests/fp: Bump fp-test-mulAdd test timeout to 3 minutes
docs/devel/tcg-plugins.rst | 17 +-
accel/tcg/plugin-helpers.h | 3 +-
include/chardev/char-fe.h | 19 +-
include/exec/gdbstub.h | 62 +++++-
include/hw/core/cpu.h | 7 +-
include/qemu/plugin.h | 1 +
include/qemu/qemu-plugin.h | 53 ++++-
target/arm/cpu.h | 27 +--
target/arm/internals.h | 14 +-
target/hexagon/internal.h | 4 +-
target/microblaze/cpu.h | 4 +-
target/ppc/cpu-qom.h | 1 +
target/ppc/cpu.h | 5 +-
target/riscv/cpu.h | 9 +-
target/s390x/cpu.h | 2 -
accel/tcg/plugin-gen.c | 43 +++-
chardev/char-fe.c | 16 +-
chardev/char.c | 2 +-
contrib/plugins/execlog.c | 322 +++++++++++++++++++++++-----
gdbstub/gdbstub.c | 198 +++++++++++------
hw/core/cpu-common.c | 5 +-
hw/riscv/boot.c | 2 +-
plugins/api.c | 114 +++++++++-
target/arm/cpu.c | 2 -
target/arm/cpu64.c | 1 -
target/arm/gdbstub.c | 230 ++++++++++----------
target/arm/gdbstub64.c | 122 +++++------
target/avr/cpu.c | 1 -
target/hexagon/cpu.c | 4 +-
target/hexagon/gdbstub.c | 10 +-
target/i386/cpu.c | 2 -
target/loongarch/cpu.c | 2 -
target/loongarch/gdbstub.c | 13 +-
target/m68k/cpu.c | 1 -
target/m68k/helper.c | 26 ++-
target/microblaze/cpu.c | 6 +-
target/microblaze/gdbstub.c | 9 +-
target/ppc/cpu_init.c | 7 -
target/ppc/gdbstub.c | 114 +++++-----
target/riscv/cpu.c | 154 ++++++-------
target/riscv/gdbstub.c | 151 +++++++------
target/riscv/kvm/kvm-cpu.c | 10 +-
target/riscv/machine.c | 7 +-
target/riscv/tcg/tcg-cpu.c | 44 +---
target/riscv/translate.c | 3 +-
target/rx/cpu.c | 1 -
target/s390x/cpu.c | 1 -
target/s390x/gdbstub.c | 105 +++++----
.gitlab-ci.d/buildtest.yml | 4 +-
plugins/qemu-plugins.symbols | 2 +
scripts/feature_to_c.py | 14 +-
scripts/mtest2make.py | 3 +-
tests/avocado/kvm_xen_guest.py | 2 +-
tests/avocado/machine_microblaze.py | 26 +++
tests/fp/meson.build | 2 +-
tests/qtest/meson.build | 25 +--
tests/unit/meson.build | 2 +
57 files changed, 1332 insertions(+), 704 deletions(-)
--
2.39.2
- [PATCH 00/40] testing and plugin updates for 9.0,
Alex Bennée <=
- [PATCH 01/40] tests/avocado: Add a test for a little-endian microblaze machine, Alex Bennée, 2023/12/21
- [PATCH 02/40] tests/avocado: use snapshot=on in kvm_xen_guest, Alex Bennée, 2023/12/21
- [PATCH 03/40] gitlab: include microblazeel in testing, Alex Bennée, 2023/12/21
- [PATCH 07/40] qtest: bump qom-test timeout to 15 minutes, Alex Bennée, 2023/12/21
- [PATCH 05/40] qtest: bump min meson timeout to 60 seconds, Alex Bennée, 2023/12/21
- [PATCH 04/40] chardev: use bool for fe_is_open, Alex Bennée, 2023/12/21
- [PATCH 06/40] qtest: bump migration-test timeout to 8 minutes, Alex Bennée, 2023/12/21
- [PATCH 10/40] qtest: bump pxe-test timeout to 10 minutes, Alex Bennée, 2023/12/21
- [PATCH 08/40] qtest: bump npcm7xx_pwn-test timeout to 5 minutes, Alex Bennée, 2023/12/21
- [PATCH 13/40] qtest: bump qos-test timeout to 2 minutes, Alex Bennée, 2023/12/21