[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-devel] [PATCH for-4.1 24/24] icount: clean up cpu_can_io before ju
From: |
Pavel Dovgalyuk |
Subject: |
[Qemu-devel] [PATCH for-4.1 24/24] icount: clean up cpu_can_io before jumping to the next block |
Date: |
Fri, 21 Jun 2019 11:22:53 +0300 |
User-agent: |
StGit/0.17.1-dirty |
From: Pavel Dovgalyuk <address@hidden>
Most of IO instructions can be executed only at the end of the block in
icount mode. Therefore translator can set cpu_can_io flag when translating
the last instruction.
But when the blocks are chained, then this flag is not reset and may
remain set at the beginning of the next block.
This patch resets the flag before "chaining" the translation blocks.
Signed-off-by: Pavel Dovgalyuk <address@hidden>
---
accel/tcg/tcg-runtime.c | 2 ++
1 file changed, 2 insertions(+)
diff --git a/accel/tcg/tcg-runtime.c b/accel/tcg/tcg-runtime.c
index 8a1e408e31..fe6b83d0fc 100644
--- a/accel/tcg/tcg-runtime.c
+++ b/accel/tcg/tcg-runtime.c
@@ -151,6 +151,8 @@ void *HELPER(lookup_tb_ptr)(CPUArchState *env)
target_ulong cs_base, pc;
uint32_t flags;
+ /* We are going to jump to the next block. can_do_io should be reset */
+ cpu->can_do_io = !use_icount;
tb = tb_lookup__cpu_state(cpu, &pc, &cs_base, &flags, curr_cflags());
if (tb == NULL) {
return tcg_ctx->code_gen_epilogue;
- [Qemu-devel] [PATCH for-4.1 18/24] replay: describe reverse debugging in docs/replay.txt, (continued)
- [Qemu-devel] [PATCH for-4.1 18/24] replay: describe reverse debugging in docs/replay.txt, Pavel Dovgalyuk, 2019/06/21
- [Qemu-devel] [PATCH for-4.1 17/24] gdbstub: add reverse continue support in replay mode, Pavel Dovgalyuk, 2019/06/21
- [Qemu-devel] [PATCH for-4.1 20/24] replay: document development rules, Pavel Dovgalyuk, 2019/06/21
- [Qemu-devel] [PATCH for-4.1 14/24] replay: refine replay-time module, Pavel Dovgalyuk, 2019/06/21
- [Qemu-devel] [PATCH for-4.1 09/24] replay: provide an accessor for rr filename, Pavel Dovgalyuk, 2019/06/21
- [Qemu-devel] [PATCH for-4.1 08/24] migration: introduce icount field for snapshots, Pavel Dovgalyuk, 2019/06/21
- [Qemu-devel] [PATCH for-4.1 16/24] gdbstub: add reverse step support in replay mode, Pavel Dovgalyuk, 2019/06/21
- [Qemu-devel] [PATCH for-4.1 10/24] qapi: introduce replay.json for record/replay-related stuff, Pavel Dovgalyuk, 2019/06/21
- [Qemu-devel] [PATCH for-4.1 06/24] replay: finish record/replay before closing the disks, Pavel Dovgalyuk, 2019/06/21
- [Qemu-devel] [PATCH for-4.1 03/24] replay: disable default snapshot for record/replay, Pavel Dovgalyuk, 2019/06/21
- [Qemu-devel] [PATCH for-4.1 24/24] icount: clean up cpu_can_io before jumping to the next block,
Pavel Dovgalyuk <=
- [Qemu-devel] [PATCH for-4.1 12/24] replay: introduce breakpoint at the specified step, Pavel Dovgalyuk, 2019/06/21
- [Qemu-devel] [PATCH for-4.1 07/24] qcow2: introduce icount field for snapshots, Pavel Dovgalyuk, 2019/06/21
- [Qemu-devel] [PATCH for-4.1 05/24] replay: don't drain/flush bdrv queue while RR is working, Pavel Dovgalyuk, 2019/06/21
- [Qemu-devel] [PATCH for-4.1 02/24] block: implement bdrv_snapshot_goto for blkreplay, Pavel Dovgalyuk, 2019/06/21
- [Qemu-devel] [PATCH for-4.1 04/24] replay: update docs for record/replay with block devices, Pavel Dovgalyuk, 2019/06/21
- [Qemu-devel] [PATCH for-4.1 01/24] replay: add missing fix for internal function, Pavel Dovgalyuk, 2019/06/21
- Re: [Qemu-devel] [PATCH for-4.1 00/24] Fix record/replay and add reverse debugging, no-reply, 2019/06/21
- Re: [Qemu-devel] [PATCH for-4.1 00/24] Fix record/replay and add reverse debugging, dovgaluk, 2019/06/27