Hi,
This wraps up my current testing, gdbstub and plugin trees in an
attempt to do my part to reduce the qemu-devel fire hose.
For testing we have a number of cleanups to configure to better handle
selecting the container engine (removing the ability to dynamically
switch). I had to do this as one of my build boxes has recently
acquired a broken podman install. There are also some updates to
avocado sbsa-ref as well as tweaks to the gitlab setup to minimise the
amount of wheel spinning we do. The deprecation of CRIS is a little
provocative but if we do want to keep it we need to stop relying on a
rapidly dated fedora image to do it. Finally we include the swtpm
package to widen the testing we do through avocado.
The gdbstub updates are from Akihiko and include a bunch of clean-ups
that will hopefully pave the way for another series which allows the
plugins to access register values using the gdb backend to source the
data.
Finally the plugins has a few fixes which includes a tweak to make SH4
atomic modelling more plugin friendly. This allows for Matt's fix to
deal with non-regular instruction encoding spanning pages. I also fix
a number of coverity warnings.
The final time control patches are still RFC and not ready for merging
but I include them for completeness.
The following still need review:
contrib/plugins: add iops plugin example for cost modelling
plugins: add time control API
sysemu: generalise qtest_warp_clock as qemu_clock_advance_virtual_time
qtest: use cpu interface in qtest_clock_warp (1 acks, 1 sobs, 0 tbs)
contrib/plugins: fix coverity warning in hotblocks
contrib/plugins: fix coverity warning in lockstep
contrib/plugins: fix coverity warning in cache
configure: ensure dependency for cross-compile setup
configure: remove gcc version suffixes
configure: allow user to override docker engine
tests/docker: make docker engine choice entirely configure driven
docs: mark CRIS support as deprecated
tests/lcitool: add swtpm to the package list
Akihiko Odaki (12):
gdbstub: Fix target_xml initialization
gdbstub: Fix target.xml response
plugins: Check if vCPU is realized
contrib/plugins: Use GRWLock in execlog
gdbstub: Introduce GDBFeature structure
target/arm: Move the reference to arm-core.xml
hw/core/cpu: Return static value with gdb_arch_name()
gdbstub: Use g_markup_printf_escaped()
target/arm: Remove references to gdb_has_xml
target/ppc: Remove references to gdb_has_xml
gdbstub: Remove gdb_has_xml variable
gdbstub: Replace gdb_regs with an array
Alex Bennée (15):
tests/lcitool: add swtpm to the package list
gitlab: shuffle some targets and reduce avocado noise
docs: mark CRIS support as deprecated
tests/docker: make docker engine choice entirely configure driven
configure: allow user to override docker engine
configure: remove gcc version suffixes
configure: ensure dependency for cross-compile setup
contrib/plugins: fix coverity warning in cache
contrib/plugins: fix coverity warning in lockstep
contrib/plugins: fix coverity warning in hotblocks
sysemu: add set_virtual_time to accel ops
qtest: use cpu interface in qtest_clock_warp
sysemu: generalise qtest_warp_clock as qemu_clock_advance_virtual_time
plugins: add time control API
contrib/plugins: add iops plugin example for cost modelling
Marcin Juszkiewicz (1):
tests/avocado: update firmware to enable sbsa-ref/neoverse-v1
Matt Borgerson (1):
plugins: Set final instruction count in plugin_gen_tb_end
Richard Henderson (2):
accel/tcg: Add plugin_enabled to DisasContextBase
target/sh4: Disable decode_gusa when plugins enabled
MAINTAINERS | 2 +-
docs/about/deprecated.rst | 11 +
configure | 15 +-
meson.build | 2 +-
gdbstub/internals.h | 2 -
include/exec/gdbstub.h | 17 +-
include/exec/plugin-gen.h | 4 +-
include/exec/translator.h | 2 +
include/hw/core/cpu.h | 4 +-
include/qemu/qemu-plugin.h | 19 ++
include/qemu/timer.h | 15 +
include/sysemu/accel-ops.h | 18 +-
include/sysemu/cpu-timers.h | 27 +-
include/sysemu/qtest.h | 1 +
target/ppc/internal.h | 2 +-
accel/qtest/qtest.c | 1 +
accel/tcg/plugin-gen.c | 6 +-
accel/tcg/translator.c | 3 +-
contrib/plugins/cache.c | 18 +-
contrib/plugins/execlog.c | 16 +-
contrib/plugins/hotblocks.c | 2 +-
contrib/plugins/iops.c | 261 ++++++++++++++++++
contrib/plugins/lockstep.c | 13 +-
gdbstub/gdbstub.c | 95 +++----
gdbstub/softmmu.c | 2 +-
plugins/api.c | 28 ++
plugins/core.c | 2 +-
softmmu/cpus.c | 11 +
softmmu/qtest.c | 26 +-
...t-virtual-clock.c => cpus-virtual-clock.c} | 5 +
stubs/gdbstub.c | 6 +-
target/arm/cpu.c | 9 +-
target/arm/cpu64.c | 4 +-
target/arm/gdbstub.c | 32 +--
target/i386/cpu.c | 6 +-
target/loongarch/cpu.c | 8 +-
target/ppc/gdbstub.c | 24 +-
target/riscv/cpu.c | 6 +-
target/s390x/cpu.c | 4 +-
target/sh4/translate.c | 41 ++-
target/tricore/cpu.c | 4 +-
util/qemu-timer.c | 26 ++
.gitlab-ci.d/buildtest.yml | 15 +-
.gitlab-ci.d/cirrus/macos-12.vars | 2 +-
contrib/plugins/Makefile | 1 +
plugins/qemu-plugins.symbols | 2 +
scripts/feature_to_c.py | 48 ++++
scripts/feature_to_c.sh | 69 -----
stubs/meson.build | 2 +-
tests/avocado/machine_aarch64_sbsaref.py | 25 +-
tests/docker/Makefile.include | 7 +-
tests/docker/dockerfiles/alpine.docker | 1 +
tests/docker/dockerfiles/centos8.docker | 1 +
.../dockerfiles/debian-amd64-cross.docker | 1 +
tests/docker/dockerfiles/debian-amd64.docker | 1 +
.../dockerfiles/debian-arm64-cross.docker | 1 +
.../dockerfiles/debian-armhf-cross.docker | 1 +
.../dockerfiles/debian-ppc64el-cross.docker | 1 +
.../dockerfiles/debian-s390x-cross.docker | 1 +
.../dockerfiles/fedora-win32-cross.docker | 1 +
.../dockerfiles/fedora-win64-cross.docker | 1 +
tests/docker/dockerfiles/fedora.docker | 1 +
tests/docker/dockerfiles/opensuse-leap.docker | 1 +
tests/docker/dockerfiles/ubuntu2204.docker | 1 +
tests/lcitool/libvirt-ci | 2 +-
tests/lcitool/projects/qemu.yml | 1 +
66 files changed, 689 insertions(+), 298 deletions(-)
create mode 100644 contrib/plugins/iops.c
rename stubs/{cpus-get-virtual-clock.c => cpus-virtual-clock.c} (68%)
create mode 100755 scripts/feature_to_c.py
delete mode 100644 scripts/feature_to_c.sh
--
2.39.2