Hi, There are a couple of bug fixes in here but also the RFC for exposing time control to the plugin. Its very rough and ready and I've not done very many tests on the stability of the time slowing down but reducing the iops value does seem to at least get reflected in slower dhrystone scores.
Alex. Alex Bennée (8): plugins: force slow path when plugins instrument memory ops plugins: fix memory leak while parsing options plugins: update lockstep to use g_memdup2 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 include/exec/cpu-all.h | 2 +- include/hw/core/cpu.h | 17 ++ include/qemu/qemu-plugin.h | 19 ++ include/qemu/timer.h | 15 + include/sysemu/accel-ops.h | 18 +- include/sysemu/cpu-timers.h | 3 +- include/sysemu/qtest.h | 1 + accel/qtest/qtest.c | 1 + accel/tcg/cputlb.c | 4 +- accel/tcg/user-exec.c | 6 +- contrib/plugins/cache.c | 2 +- contrib/plugins/drcov.c | 2 +- contrib/plugins/execlog.c | 2 +- contrib/plugins/hotblocks.c | 2 +- contrib/plugins/hotpages.c | 2 +- contrib/plugins/howvec.c | 2 +- contrib/plugins/hwprofile.c | 2 +- contrib/plugins/iops.c | 260 ++++++++++++++++++ contrib/plugins/lockstep.c | 4 +- plugins/api.c | 22 ++ softmmu/cpus.c | 11 + softmmu/qtest.c | 26 +- ...t-virtual-clock.c => cpus-virtual-clock.c} | 5 + target/arm/tcg/sve_helper.c | 4 - tests/plugin/bb.c | 2 +- tests/plugin/insn.c | 2 +- tests/plugin/mem.c | 2 +- tests/plugin/syscall.c | 2 +- util/qemu-timer.c | 26 ++ contrib/plugins/Makefile | 1 + plugins/qemu-plugins.symbols | 2 + stubs/meson.build | 2 +- tests/tcg/aarch64/Makefile.target | 8 + 33 files changed, 433 insertions(+), 46 deletions(-) create mode 100644 contrib/plugins/iops.c rename stubs/{cpus-get-virtual-clock.c => cpus-virtual-clock.c} (68%) -- 2.39.2