diff options
| author | Pavel Dovgalyuk <pavel.dovgalyuk@ispras.ru> | 2021-02-16 15:51:44 +0300 |
|---|---|---|
| committer | Paolo Bonzini <pbonzini@redhat.com> | 2021-02-16 17:15:39 +0100 |
| commit | 366a85e4bb748794b1ae0ca0ccc2d95f316679a0 (patch) | |
| tree | ccbf65483b2908cc8ea997c735ca3cebe1510319 /stubs/replay-tools.c | |
| parent | 82e2756897810b6e17e0c352101878b97b1e2688 (diff) | |
| download | focaccia-qemu-366a85e4bb748794b1ae0ca0ccc2d95f316679a0.tar.gz focaccia-qemu-366a85e4bb748794b1ae0ca0ccc2d95f316679a0.zip | |
replay: fix icount request when replaying clock access
Record/replay provides REPLAY_CLOCK_LOCKED macro to access the clock when vm_clock_seqlock is locked. This macro is needed because replay internals operate icount. In locked case replay use icount_get_raw_locked for icount request, which prevents excess locking which leads to deadlock. But previously only record code used *_locked function and replay did not. Therefore sometimes clock access lead to deadlocks. This patch fixes clock access for replay too and uses *_locked icount access function. Signed-off-by: Pavel Dovgalyuk <Pavel.Dovgalyuk@ispras.ru> Message-Id: <161347990483.1313189.8371838968343494161.stgit@pasha-ThinkPad-X280> Signed-off-by: Paolo Bonzini <pbonzini@redhat.com>
Diffstat (limited to 'stubs/replay-tools.c')
| -rw-r--r-- | stubs/replay-tools.c | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/stubs/replay-tools.c b/stubs/replay-tools.c index c06b360e22..43296b3d4e 100644 --- a/stubs/replay-tools.c +++ b/stubs/replay-tools.c @@ -13,7 +13,7 @@ int64_t replay_save_clock(unsigned int kind, int64_t clock, int64_t raw_icount) return 0; } -int64_t replay_read_clock(unsigned int kind) +int64_t replay_read_clock(unsigned int kind, int64_t raw_icount) { abort(); return 0; |