Hi, This is the current state of my maintainer trees. The gdbstub patches are just minor clean-ups. The main feature this brings in is the ability for plugins to control time. This has been discussed before but represents the first time plugins can "control" the execution of the core. The idea would be to eventually deprecate the icount auto modes in favour of a plugin and just use icount for deterministic execution and record/replay. v2 - merged in Pierrick's fixes - added migration blocker - added Max's plugin tweak I'll send the PR on Monday if nothing comes up. The following still need review: plugins: add migration blocker Alex. Akihiko Odaki (1): plugins: Ensure register handles are not NULL Alex Bennée (7): include/exec: add missing include guard comment gdbstub: move enums into separate header 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 plugins: add migration blocker Max Chou (1): accel/tcg: Avoid unnecessary call overhead from qemu_plugin_vcpu_mem_cb Pierrick Bouvier (3): qtest: move qtest_{get, set}_virtual_clock to accel/qtest/qtest.c contrib/plugins: add Instructions Per Second (IPS) example for cost modeling plugins: fix inject_mem_cb rw masking include/exec/gdbstub.h | 11 +- include/gdbstub/enums.h | 21 +++ include/qemu/qemu-plugin.h | 27 +++ include/qemu/timer.h | 15 ++ include/sysemu/accel-ops.h | 18 +- include/sysemu/cpu-timers.h | 3 +- include/sysemu/qtest.h | 2 - accel/hvf/hvf-accel-ops.c | 2 +- accel/kvm/kvm-all.c | 2 +- accel/qtest/qtest.c | 13 ++ accel/tcg/plugin-gen.c | 4 +- accel/tcg/tcg-accel-ops.c | 2 +- contrib/plugins/ips.c | 164 ++++++++++++++++++ gdbstub/user.c | 1 + monitor/hmp-cmds.c | 3 +- plugins/api.c | 47 ++++- plugins/core.c | 4 +- ...t-virtual-clock.c => cpus-virtual-clock.c} | 5 + system/cpus.c | 11 ++ system/qtest.c | 37 +--- system/vl.c | 1 + target/arm/hvf/hvf.c | 2 +- target/arm/hyp_gdbstub.c | 2 +- target/arm/kvm.c | 2 +- target/i386/kvm/kvm.c | 2 +- target/ppc/kvm.c | 2 +- target/s390x/kvm/kvm.c | 2 +- util/qemu-timer.c | 26 +++ accel/tcg/ldst_common.c.inc | 8 +- contrib/plugins/Makefile | 1 + plugins/qemu-plugins.symbols | 2 + stubs/meson.build | 2 +- 32 files changed, 377 insertions(+), 67 deletions(-) create mode 100644 include/gdbstub/enums.h create mode 100644 contrib/plugins/ips.c rename stubs/{cpus-get-virtual-clock.c => cpus-virtual-clock.c} (68%) -- 2.39.2