Hi, This doesn't change much from v2 earlier this week:
https://lists.nongnu.org/archive/html/qemu-devel/2017-04/msg00661.html There was a minor improvement to the cpu_update_icount to not use a potentially expensive atomic_add (which is CST) when you can get away with weaker semantics with a single writer. I've also fixed a compile error on 32bit guests. It only falls back to non-atomic code if CONFIG_ATOMIC64 is not set which isn't the case for ARMv7 as it can use load/store-exclusive pair to do the operation. This does require using the __no_check atomic variants though. I still plan to roll a pull-request on Monday and get it sent to Peter in good time for cutting -rc4. Cheers, Alex Bennée (12): scripts/qemugdb/mtree.py: fix up mtree dump scripts/qemu-gdb/timers.py: new helper to dump timer state scripts/replay-dump.py: replay log dumper target/i386/misc_helper: wrap BQL around another IRQ generator cpus: remove icount handling from qemu_tcg_cpu_thread_fn cpus: check cpu->running in cpu_get_icount_raw() cpus: move icount preparation out of tcg_exec_cpu cpus: don't credit executed instructions before they have run cpus: introduce cpu_update_icount helper cpu-exec: update icount after each TB_EXIT cpus: call cpu_update_icount on read replay: assert time only goes forward cpu-exec.c | 14 +-- cpus.c | 109 ++++++++++++++----- include/qemu/timer.h | 1 + include/qom/cpu.h | 1 + replay/replay-internal.c | 4 + replay/replay.c | 4 + scripts/qemu-gdb.py | 3 +- scripts/qemugdb/mtree.py | 12 +- scripts/qemugdb/timers.py | 54 +++++++++ scripts/replay-dump.py | 272 ++++++++++++++++++++++++++++++++++++++++++++++ target/i386/misc_helper.c | 3 + 11 files changed, 437 insertions(+), 40 deletions(-) create mode 100644 scripts/qemugdb/timers.py create mode 100755 scripts/replay-dump.py -- 2.11.0