Hi, Cleber!
What about record/replay tests from 25.06?
On 24.09.2021 21:54, Cleber Rosa wrote:
This is a collection of patches for the Acceptance Tests to leverage
some of the features of Avocado 91.0. With the Avocado version bump
by itself, there would be a change in the default "test runner
Commit aff0e204cb1f1c036a496c94c15f5dfafcd9b4b4 introduced CF_NOIRQ usage,
but one case was forgotten. Record/replay uses one special TB which is not
really executed, but used to cause a correct exception in replay mode.
This patch adds CF_NOIRQ flag for such block.
Signed-off-by: Pavel Dovgalyuk
A9 gtimer includes global control field and number of per-cpu fields.
But only per-cpu ones are migrated. This patch adds a subsection for
global control field migration.
Signed-off-by: Pavel Dovgalyuk
---
hw/timer/a9gtimer.c | 21 +
1 file changed, 21 insertions(+)
diff
(1 << 15);
}
-
-/* KVM is always non-secure so add the NS flag on AArch32 register
- * entries.
- */
- cpregid |= 1 << CP_REG_NS_SHIFT;
}
return cpregid;
}
--
Pavel Dovgalyuk
On 07.02.2022 16:44, Peter Maydell wrote:
On Mon, 7 Feb 2022 at 12:13, Pavel Dovgalyuk wrote:
I recently encountered a problem with cp15.dacr register.
It has _s and _ns versions. During the migration only dacr_ns is
saved/loaded.
But both of the values are used in get_phys_addr_v5 and
On 25.10.2021 22:03, Alex Bennée wrote:
NDNF writes:
These patches adds the ability to generate files in drcov format.
Primary goal this scripts is to have coverage
logfiles thatwork in Lighthouse.
Queued with some fixes to plugins/next, thanks.
ping
On 28.10.2021 22:26, Richard Henderson wrote:
On 10/28/21 4:48 AM, Pavel Dovgalyuk wrote:
+ if (cpu->cflags_next_tb == -1
+ && (!use_icount || !(tb->cflags & CF_USE_ICOUNT)
+ || cpu_neg(cpu)->icount_decr.
On 10.09.2021 17:41, Richard Henderson wrote:
On 9/10/21 3:46 PM, David Hildenbrand wrote:
On 10.09.21 15:34, Richard Henderson wrote:
On 9/10/21 1:15 PM, David Hildenbrand wrote:
On 07.09.21 13:30, Pavel Dovgalyuk wrote:
Watchpoint processing code restores vCPU state twice:
in
According to the logic of vmmouse_update_handler function,
vmmouse should be registered as an event handler when
it's status is zero.
vmmouse_read_id resets the status but does not register
the handler.
This patch adds vmmouse registration and activation when
status is reset.
Signed-off-by:
Setting timers randomly when vmstate is loaded breaks
execution determinism.
Therefore this patch allows saving mit and autoneg timers
for e1000. It makes execution deterministic and allows
snapshotting and reverse debugging in icount mode.
Signed-off-by: Pavel Dovgalyuk
---
hw/net/e1000.c
On 27.10.2021 07:05, Jason Wang wrote:
On Tue, Oct 26, 2021 at 6:36 PM Pavel Dovgalyuk
wrote:
Setting timers randomly when vmstate is loaded breaks
execution determinism.
Therefore this patch allows saving mit and autoneg timers
for e1000. It makes execution deterministic and allows
lowed
explicitly.
This patch sets CF_LAST_IO flag for retranslated block,
allowing interrupt request for the last instruction.
Signed-off-by: Pavel Dovgalyuk
---
softmmu/physmem.c |2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/softmmu/physmem.c b/softmmu/physmem.c
ial one.
This patch checks TB exit reason and restores cflags_next_tb to allow
finding the interrupted block.
Signed-off-by: Pavel Dovgalyuk
---
accel/tcg/cpu-exec.c | 10 ++
1 file changed, 10 insertions(+)
diff --git a/accel/tcg/cpu-exec.c b/accel/tcg/cpu-exec.c
index c9764c1
.
Signed-off-by: Pavel Dovgalyuk
Reviewed-by: David Hildenbrand
---
softmmu/physmem.c |6 ++
1 file changed, 2 insertions(+), 4 deletions(-)
diff --git a/softmmu/physmem.c b/softmmu/physmem.c
index f67ad29981..fd1b3b2088 100644
--- a/softmmu/physmem.c
+++ b/softmmu/physmem.c
@@ -938,18
The series includes several watchpoint-related patches.
---
Pavel Dovgalyuk (4):
softmmu: fix watchpoint processing in icount mode
softmmu: remove useless condition in watchpoint check
softmmu: fix for "after access" watchpoints
icount: preserve cflags when cu
cpu_check_watchpoint function checks cpu->watchpoint_hit at the entry.
But then it also does the same in the middle of the function,
while this field can't change.
That is why this patch removes this useless condition.
Signed-off-by: Pavel Dovgalyuk
---
softmmu/physmem.
ping
On 07.02.2022 11:44, Pavel Dovgalyuk wrote:
A9 gtimer includes global control field and number of per-cpu fields.
But only per-cpu ones are migrated. This patch adds a subsection for
global control field migration.
Signed-off-by: Pavel Dovgalyuk
---
hw/timer/a9gtimer.c | 21
On 26.04.2022 21:45, Richard Henderson wrote:
On 4/22/22 04:53, Pavel Dovgalyuk wrote:
+void icount_notify_exit(void)
+{
+ if (icount_enabled() && first_cpu) {
+ cpu_exit(first_cpu);
+ qemu_clock_notify(QEMU_CLOCK_VIRTUAL);
+ }
+}
Why first_cpu? Did you really
On 26.04.2022 21:54, Richard Henderson wrote:
On 4/22/22 04:53, Pavel Dovgalyuk wrote:
This patch decouples checkpoints and async events.
It was a tricky part of replay implementation. Now it becomes
much simpler and easier to maintain.
Signed-off-by: Pavel Dovgalyuk
Looks ok, as far as I
On 26.04.2022 23:26, Richard Henderson wrote:
On 4/22/22 04:53, Pavel Dovgalyuk wrote:
static Event *replay_read_event(void)
{
Event *event;
+ int event_kind = replay_state.data_kind - EVENT_ASYNC;
Use the enum type.
Ok.
+/* Asynchronous events IDs */
+
+enum
This patch decouples checkpoints and async events.
It was a tricky part of replay implementation. Now it becomes
much simpler and easier to maintain.
Signed-off-by: Pavel Dovgalyuk
Acked-by: Richard Henderson
---
accel/tcg/tcg-accel-ops-icount.c |5 +--
docs/replay.txt
execution of guest code.
Signed-off-by: Pavel Dovgalyuk
--
v2: changed first_cpu to current_cpu (suggested by Richard Henderson)
---
include/sysemu/cpu-timers.h |1 +
softmmu/icount.c|8
stubs/icount.c |4
util/async.c|8
- fixed some issues found by Richard Henderson
---
Pavel Dovgalyuk (9):
replay: fix event queue flush for qemu shutdown
replay: notify vCPU when BH is scheduled
replay: rewrite async event handling
replay: simplify async event processing
docs: convert docs/devel
This patch joins replay event id and async event id into single byte in the log.
It makes processing a bit faster and log a bit smaller.
Signed-off-by: Pavel Dovgalyuk
--
v2: minor enum fixes (suggested by Richard Henderson)
---
replay/replay-events.c | 36
This patch adds replay description page, converting prior
text from docs/replay.txt.
The text was also updated and some sections were moved
to devel part of the docs.
Signed-off-by: Pavel Dovgalyuk
Acked-by: Richard Henderson
---
docs/devel/replay.rst | 264
This patch fixes event queue flush in the case of emulator
shutdown. replay_finish_events should be called when replay_mode
is not cleared.
Signed-off-by: Pavel Dovgalyuk
Reviewed-by: Richard Henderson
---
replay/replay.c |3 +--
1 file changed, 1 insertion(+), 2 deletions(-)
diff --git a
This patch converts prior .txt replay devel documentation to .rst.
Signed-off-by: Pavel Dovgalyuk
Reviewed-by: Richard Henderson
---
docs/devel/index-tcg.rst |1 +
docs/devel/replay.rst| 54 ++
docs/devel/replay.txt| 46
This patch adds two tests for replaying Linux boot process
on x86_64 virtio platform.
Signed-off-by: Pavel Dovgalyuk
---
tests/avocado/replay_linux.py | 26 ++
1 file changed, 26 insertions(+)
diff --git a/tests/avocado/replay_linux.py b/tests/avocado/replay_linux.py
This patch updates replay_linux test to make it compatible with
new LinuxTest class.
Signed-off-by: Pavel Dovgalyuk
---
tests/avocado/replay_linux.py | 19 ++-
1 file changed, 14 insertions(+), 5 deletions(-)
diff --git a/tests/avocado/replay_linux.py b/tests/avocado
This patch adds two tests for replaying Linux boot process
on Aarch64 platform.
Signed-off-by: Pavel Dovgalyuk
---
tests/avocado/replay_linux.py | 41 +
1 file changed, 41 insertions(+)
diff --git a/tests/avocado/replay_linux.py b/tests/avocado
replay/replay-input.c part:
Reviewed-by: Pavel Dovgalyuk
On 18.02.2023 19:22, Sergio Lopez wrote:
Add a virtio-multitouch device to the family of devices emulated by
virtio-input implementing the Multi-touch protocol as descripted here:
https://www.kernel.org/doc/html/latest/input/multi-touch
Acked-by: Pavel Dovgalyuk
On 31.10.2022 16:25, Jiaxun Yang wrote:
As per "Cavium Networks OCTEON Plus CN50XX Hardware Reference
Manual" offset field is signed 16 bit value. However arg_BBIT.offset
is unsigned. We need to cast it as signed to do address calculation.
Signed-off-by: J
This patch changes condition and function name for enabling
indexed load instructions for Octeon vCPUs. Octeons do not
have DSP extension, but implement LBX-and-others.
Signed-off-by: Pavel Dovgalyuk
---
target/mips/tcg/translate.c | 10 +++---
1 file changed, 7 insertions(+), 3 deletions
DSP in QEMU as well.
That's true. But there is one exception: LBX/LWX/LDX instruction.
These are grouped into DSP extension in QEMU, but Octeon supports them.
I've sent a patch for enabling these instructions.
Reviewed-by: Pavel Dovgalyuk
Signed-off-by: Jiaxun Yang
Acked-by: Richar
n't
remember which one). It hangs with avocado, but does not hang when I run
it with the same command line without avocado.
It could be some replay issue (like infinite waiting for input in
main_loop_wait), but I couldn't trigger this behavior with
logging/debugging enabled.
Pavel Dovgalyuk
The following series includes emulation of the platform-specific MIPS extension
for Cavium Octeon CPUS:
- basic Octeon vCPU model
- custom instruction decoder for Octeon
- implementation of arithmetic and logic instructions
---
Pavel Dovgalyuk (3):
target/mips: introduce generic Cavium
This patch adds generic Octeon vCPU for providing
Octeon-specific instructions.
Signed-off-by: Pavel Dovgalyuk
---
target/mips/cpu-defs.c.inc | 30 ++
target/mips/mips-defs.h|1 +
2 files changed, 31 insertions(+)
diff --git a/target/mips/cpu-defs.c.inc b
This patch introduces Octeon-specific decoder and implements
check-bit-and-jump instructions.
Signed-off-by: Pavel Dovgalyuk
---
target/mips/tcg/meson.build|2 +
target/mips/tcg/octeon.decode | 14 ++
target/mips/tcg/octeon_translate.c | 53
This patch implements several Octeon-specific instructions:
- BADDU
- DMUL
- EXTS/EXTS32
- CINS/CINS32
- POP/DPOP
- SEQ/SEQI
- SNE/SNEI
Signed-off-by: Pavel Dovgalyuk
---
target/mips/helper.h|1
target/mips/tcg/meson.build |1
target/mips/tcg/octeon.decode
On 07.06.2022 20:06, Richard Henderson wrote:
On 6/7/22 01:59, Pavel Dovgalyuk wrote:
+# Branch on bit set or clear
+# BBIT0 110010 . .
+# BBIT032 110110 . .
+# BBIT1 111010 . .
+# BBIT132 10
This patch implements several Octeon-specific instructions:
- BADDU
- DMUL
- EXTS/EXTS32
- CINS/CINS32
- POP/DPOP
- SEQ/SEQI
- SNE/SNEI
Signed-off-by: Pavel Dovgalyuk
--
v2 changes:
- Using existing tcg instructions for exts, cins, pop
(suggested by Richard Henderson)
---
target/mips
by Richard
Henderson)
---
Pavel Dovgalyuk (3):
target/mips: introduce Cavium Octeon CPU model
target/mips: implement Octeon-specific BBIT instructions
target/mips: implement Octeon-specific arithmetic instructions
target/mips/tcg/meson.build| 2 +
target/mips/tcg
This patch adds Cavium Octeon vCPU for providing
Octeon-specific instructions.
Signed-off-by: Pavel Dovgalyuk
--
v2 changes:
- vCPU name changed to Octeon68XX (suggested by Richard Henderson)
---
target/mips/cpu-defs.c.inc | 28
target/mips/mips-defs.h|1
This patch introduces Octeon-specific decoder and implements
check-bit-and-jump instructions.
Signed-off-by: Pavel Dovgalyuk
--
v2 changes:
- Changed insn field description and simplified the jumps
(suggested by Richard Henderson)
---
target/mips/tcg/meson.build|2
On 09.06.2022 18:53, Richard Henderson wrote:
On 6/9/22 01:23, Pavel Dovgalyuk wrote:
+static bool trans_BADDU(DisasContext *ctx, arg_BADDU *a)
+{
+ TCGv t0, t1;
+
+ if (a->rt == 0) {
+ /* nop */
+ return true;
+ }
I believe that we're standardizing
This patch adds decodetree for Cavium Octeon extension and
an instruction set extension flag for using it in CPU models.
Signed-off-by: Pavel Dovgalyuk
---
target/mips/mips-defs.h|1 +
target/mips/tcg/meson.build|2 ++
target/mips/tcg/octeon.decode |6
This patch adds Cavium Octeon 68XX vCPU which provides
Octeon-specific instructions.
Signed-off-by: Pavel Dovgalyuk
--
v3 changes:
- split the patch to instruction set introduction and new vCPU
(suggested by Philippe Mathieu-Daudé)
v2 changes:
- vCPU name changed to Octeon68XX (suggested
(suggested by Philippe Mathieu-Daudé)
- fixed length field for EXTS/CINS (bug found by Richard Henderson)
v2 changes:
- simplified instruction decoding and translation (suggested by Richard
Henderson)
---
Pavel Dovgalyuk (2):
target/mips: introduce Cavium Octeon CPU model
target
This patch introduces Octeon-specific decoder and implements
check-bit-and-jump instructions.
Signed-off-by: Pavel Dovgalyuk
Reviewed-by: Richard Henderson
--
v3 changes:
- Split new decodetree and BBIT decoding into two patches
(suggested by Philippe Mathieu-Daudé)
v2 changes
(suggested by Philippe Mathieu-Daudé)
- fixed length field for EXTS/CINS (bug found by Richard Henderson)
v2 changes:
- simplified instruction decoding and translation (suggested by Richard
Henderson)
---
Pavel Dovgalyuk (4):
target/mips: introduce decodetree structure for Cavium
This patch implements several Octeon-specific instructions:
- BADDU
- DMUL
- EXTS/EXTS32
- CINS/CINS32
- POP/DPOP
- SEQ/SEQI
- SNE/SNEI
Signed-off-by: Pavel Dovgalyuk
--
v3 changes:
- Fixed length field for EXTS/CINS
(bug found by Richard Henderson)
v2 changes:
- Using existing tcg
Reviewed-by: Pavel Dovgalyuk
On 19.12.2022 20:08, Philippe Mathieu-Daudé wrote:
From: Philippe Mathieu-Daude
replay API is used deeply within TCG common code (common to user
and system emulation). Unfortunately "sysemu/replay.h" requires
some QAPI headers for few system-specific de
Reviewed-by: Pavel Dovgalyuk
On 24.01.2024 13:16, Philippe Mathieu-Daudé wrote:
In order to make accel/tcg/ target agnostic,
introduce the need_replay_interrupt() handler.
Signed-off-by: Philippe Mathieu-Daudé
---
include/hw/core/tcg-cpu-ops.h | 5 +
accel/tcg/cpu-exec.c | 5
Reviewed-by: Pavel Dovgalyuk
On 24.01.2024 13:16, Philippe Mathieu-Daudé wrote:
Move this x86-specific code out of the generic accel/tcg/.
Signed-off-by: Philippe Mathieu-Daudé
---
target/i386/tcg/helper-tcg.h| 1 +
accel/tcg/cpu-exec.c| 9 -
target/i386
cific ppc64 scenario, the TCG check
is being done in the common code inside run_vm() because all archs need
TCG to have access to icount.
Cc: Pavel Dovgalyuk
Signed-off-by: Daniel Henrique Barboza
Reviewed-by: Cédric Le Goater
Pavel,
Should I take this patch through the ppc tree ?
Nobod
On 06.07.2022 23:53, Philippe Mathieu-Daudé wrote:
On 4/7/22 12:59, Pavel Dovgalyuk wrote:
ping
This is the only non-reviewed patch in the series.
I've been looking for doc/datasheets but no luck (except the Linux
kernel comments).
What kind of testing are you doing?
We compare
On 06.07.2022 23:53, Philippe Mathieu-Daudé wrote:
On 4/7/22 12:59, Pavel Dovgalyuk wrote:
ping
This is the only non-reviewed patch in the series.
I've been looking for doc/datasheets but no luck (except the Linux
kernel comments).
What kind of testing are you doing?
BTW, we foun
execution of guest code.
Signed-off-by: Pavel Dovgalyuk
Reviewed-by: Richard Henderson
--
v2: changed first_cpu to current_cpu (suggested by Richard Henderson)
---
include/sysemu/cpu-timers.h |1 +
softmmu/icount.c|8
stubs/icount.c |4
util
This patch joins replay event id and async event id into single byte in the log.
It makes processing a bit faster and log a bit smaller.
Signed-off-by: Pavel Dovgalyuk
Reviewed-by: Richard Henderson
--
v2: minor enum fixes (suggested by Richard Henderson)
---
replay/replay-events.c | 36
This patch updates replay_linux test to make it compatible with
new LinuxTest class.
Signed-off-by: Pavel Dovgalyuk
---
tests/avocado/replay_linux.py | 19 ++-
1 file changed, 14 insertions(+), 5 deletions(-)
diff --git a/tests/avocado/replay_linux.py b/tests/avocado
v2 changes:
- rebased to master
- fixed some issues found by Richard Henderson
---
Pavel Dovgalyuk (9):
replay: fix event queue flush for qemu shutdown
replay: notify vCPU when BH is scheduled
replay: rewrite async event handling
replay: simplify async event processing
This patch converts prior .txt replay devel documentation to .rst.
Signed-off-by: Pavel Dovgalyuk
Reviewed-by: Richard Henderson
---
docs/devel/index-tcg.rst |1 +
docs/devel/replay.rst| 54 ++
docs/devel/replay.txt| 46
This patch adds two tests for replaying Linux boot process
on Aarch64 platform.
Signed-off-by: Pavel Dovgalyuk
---
tests/avocado/replay_linux.py | 41 +
1 file changed, 41 insertions(+)
diff --git a/tests/avocado/replay_linux.py b/tests/avocado
This patch adds replay description page, converting prior
text from docs/replay.txt.
The text was also updated and some sections were moved
to devel part of the docs.
Signed-off-by: Pavel Dovgalyuk
Acked-by: Richard Henderson
---
docs/devel/replay.rst | 264
This patch adds two tests for replaying Linux boot process
on x86_64 virtio platform.
Signed-off-by: Pavel Dovgalyuk
---
tests/avocado/replay_linux.py | 26 ++
1 file changed, 26 insertions(+)
diff --git a/tests/avocado/replay_linux.py b/tests/avocado/replay_linux.py
This patch fixes event queue flush in the case of emulator
shutdown. replay_finish_events should be called when replay_mode
is not cleared.
Signed-off-by: Pavel Dovgalyuk
Reviewed-by: Richard Henderson
---
replay/replay.c |3 +--
1 file changed, 1 insertion(+), 2 deletions(-)
diff --git a
This patch decouples checkpoints and async events.
It was a tricky part of replay implementation. Now it becomes
much simpler and easier to maintain.
Signed-off-by: Pavel Dovgalyuk
Acked-by: Richard Henderson
---
accel/tcg/tcg-accel-ops-icount.c |5 +--
docs/replay.txt
On 26.05.2022 12:37, Paolo Bonzini wrote:
On 5/26/22 10:45, Pavel Dovgalyuk wrote:
vCPU execution should be suspended when new BH is scheduled.
This is needed to avoid guest timeouts caused by the long cycles
of the execution. In replay mode execution may hang when
vCPU sleeps and block event
On 26.05.2022 12:40, Paolo Bonzini wrote:
On 5/26/22 10:45, Pavel Dovgalyuk wrote:
+
+typedef enum ReplayAsyncEventKind {
+ REPLAY_ASYNC_EVENT_BH,
+ REPLAY_ASYNC_EVENT_BH_ONESHOT,
+ REPLAY_ASYNC_EVENT_INPUT,
+ REPLAY_ASYNC_EVENT_INPUT_SYNC,
+ REPLAY_ASYNC_EVENT_CHAR_READ
On 26.05.2022 15:10, Paolo Bonzini wrote:
On 5/26/22 11:51, Pavel Dovgalyuk wrote:
At least aio_bh_schedule_oneshot_full should have the same effect, so
should this be done at a lower level, in aio_bh_enqueue() or even
aio_notify()?
Not sure about aio_notify. It can operate with different
notification to aio_bh_enqueue (suggested by Paolo Bonzini)
v3 changes:
- rebased to master
v2 changes:
- rebased to master
- fixed some issues found by Richard Henderson
---
Pavel Dovgalyuk (9):
replay: fix event queue flush for qemu shutdown
replay: notify vCPU when BH is scheduled
This patch converts prior .txt replay devel documentation to .rst.
Signed-off-by: Pavel Dovgalyuk
Reviewed-by: Richard Henderson
---
docs/devel/index-tcg.rst |1 +
docs/devel/replay.rst| 54 ++
docs/devel/replay.txt| 46
This patch decouples checkpoints and async events.
It was a tricky part of replay implementation. Now it becomes
much simpler and easier to maintain.
Signed-off-by: Pavel Dovgalyuk
Acked-by: Richard Henderson
---
accel/tcg/tcg-accel-ops-icount.c |5 +--
docs/replay.txt
execution of guest code.
Signed-off-by: Pavel Dovgalyuk
Reviewed-by: Richard Henderson
--
v2: changed first_cpu to current_cpu (suggested by Richard Henderson)
v4: moved vCPU notification to aio_bh_enqueue (suggested by Paolo Bonzini)
---
include/sysemu/cpu-timers.h |1 +
softmmu/icount.c
This patch joins replay event id and async event id into single byte in the log.
It makes processing a bit faster and log a bit smaller.
Signed-off-by: Pavel Dovgalyuk
Reviewed-by: Richard Henderson
--
v2: minor enum fixes (suggested by Richard Henderson)
---
replay/replay-events.c | 36
This patch fixes event queue flush in the case of emulator
shutdown. replay_finish_events should be called when replay_mode
is not cleared.
Signed-off-by: Pavel Dovgalyuk
Reviewed-by: Richard Henderson
---
replay/replay.c |3 +--
1 file changed, 1 insertion(+), 2 deletions(-)
diff --git a
This patch adds replay description page, converting prior
text from docs/replay.txt.
The text was also updated and some sections were moved
to devel part of the docs.
Signed-off-by: Pavel Dovgalyuk
Acked-by: Richard Henderson
---
docs/devel/replay.rst | 264
This patch adds two tests for replaying Linux boot process
on x86_64 virtio platform.
Signed-off-by: Pavel Dovgalyuk
---
tests/avocado/replay_linux.py | 26 ++
1 file changed, 26 insertions(+)
diff --git a/tests/avocado/replay_linux.py b/tests/avocado/replay_linux.py
This patch updates replay_linux test to make it compatible with
new LinuxTest class.
Signed-off-by: Pavel Dovgalyuk
---
tests/avocado/replay_linux.py | 19 ++-
1 file changed, 14 insertions(+), 5 deletions(-)
diff --git a/tests/avocado/replay_linux.py b/tests/avocado
This patch adds two tests for replaying Linux boot process
on Aarch64 platform.
Signed-off-by: Pavel Dovgalyuk
---
tests/avocado/replay_linux.py | 41 +
1 file changed, 41 insertions(+)
diff --git a/tests/avocado/replay_linux.py b/tests/avocado
thieu-Daudé
Reviewed-by: Cédric Le Goater
Reviewed-by: Alex Bennée
Acked-by: Dr. David Alan Gilbert
---
replay/replay-char.c | 4 +--
replay/replay-events.c | 10 +++---
Reviewed-by: Pavel Dovgalyuk
diff --git a/replay/replay-char.c b/replay/replay-c
om numbers are external to the machine, they come from the outer world.
It means that this is completely new reset case and new solution should
be found for it.
Pavel Dovgalyuk
This patch converts prior .txt replay devel documentation to .rst.
Signed-off-by: Pavel Dovgalyuk
---
docs/devel/index-tcg.rst |2 ++
docs/devel/replay.rst| 54 ++
docs/devel/replay.txt| 46 ---
3
The following series includes the following record/replay-related changes:
- simplified async event processing
- updated record/replay documentation, which was also converted to rst
- avocado tests for record/replay of Linux for x86_64 and Aarch64
- some bugfixes
---
Pavel Dovgalyuk (9
This patch fixes event queue flush in the case of emulator
shutdown. replay_finish_events should be called when replay_mode
is not cleared.
Signed-off-by: Pavel Dovgalyuk
---
replay/replay.c |3 +--
1 file changed, 1 insertion(+), 2 deletions(-)
diff --git a/replay/replay.c b/replay
This patch adds replay description page, converting prior
text from docs/replay.txt.
The text was also updated and some sections were moved
to devel part of the docs.
Signed-off-by: Pavel Dovgalyuk
---
docs/devel/replay.rst | 264 ++-
docs/replay.txt| 407
This patch updates replay_linux test to make it compatible with
new LinuxTest class.
Signed-off-by: Pavel Dovgalyuk
---
tests/avocado/replay_linux.py | 19 ++-
1 file changed, 14 insertions(+), 5 deletions(-)
diff --git a/tests/avocado/replay_linux.py b/tests/avocado
execution of guest code.
Signed-off-by: Pavel Dovgalyuk
---
include/sysemu/cpu-timers.h |1 +
softmmu/icount.c|8
stubs/icount.c |4
util/async.c|8
4 files changed, 21 insertions(+)
diff --git a/include/sysemu/cpu
This patch decouples checkpoints and async events.
It was a tricky part of replay implementation. Now it becomes
much simpler and easier to maintain.
Signed-off-by: Pavel Dovgalyuk
---
accel/tcg/tcg-accel-ops-icount.c |5 +--
docs/replay.txt | 11 ++
include/sysemu
This patch adds two tests for replaying Linux boot process
on x86_64 virtio platform.
Signed-off-by: Pavel Dovgalyuk
---
tests/avocado/replay_linux.py | 26 ++
1 file changed, 26 insertions(+)
diff --git a/tests/avocado/replay_linux.py b/tests/avocado/replay_linux.py
This patch joins replay event id and async event id into single byte in the log.
It makes processing a bit faster and log a bit smaller.
Signed-off-by: Pavel Dovgalyuk
---
replay/replay-events.c | 36 ++--
replay/replay-internal.h | 29
This patch adds two tests for replaying Linux boot process
on Aarch64 platform.
Signed-off-by: Pavel Dovgalyuk
---
tests/avocado/replay_linux.py | 41 +
1 file changed, 41 insertions(+)
diff --git a/tests/avocado/replay_linux.py b/tests/avocado
From: Pavel Dovgalyuk
This patch blocks record/replay when guest_announce is enabled,
because this flag breaks loading the snapshots in deterministic
execution mode.
Signed-off-by: Pavel Dovgalyuk
---
hw/net/virtio-net.c | 4
1 file changed, 4 insertions(+)
diff --git a/hw/net/virtio
From: Pavel Dovgalyuk
Snapshots created in regular icount execution mode can't be loaded
in recording mode, because icount value advances only by 32-bit value.
This patch initializes replay icount initial value after loading
the snapshot.
Cc: Pizarro Solar Rafael Ulises Luzius
Signed-o
From: Pavel Dovgalyuk
virtio-net device uses bottom halves for callbacks.
These callbacks should be deterministic, because they affect VM state.
This patch replaces BH invocations with corresponding replay functions,
making them deterministic in record/replay mode.
Signed-off-by: Pavel
From: Pavel Dovgalyuk
The set of patches include the following modifications:
- fix for allowing record/replay with virtio-net
- fix for loading non-replay snapshots
Pavel Dovgalyuk (3):
replay: improve determinism of virtio-net
virtio-net: added replay blocker for guest_announce
replay
On 08.08.2023 06:09, Nicholas Piggin wrote:
On Sun Aug 6, 2023 at 9:46 PM AEST, Nicholas Piggin wrote:
On Fri Aug 4, 2023 at 6:50 PM AEST, Pavel Dovgalyuk wrote:
BTW, there is a function qemu_register_reset_nosnapshotload that can be
used in similar cases.
Can you just use it without changing
From: Pavel Dovgalyuk
This patch blocks record/replay when guest_announce is enabled,
because this flag breaks loading the snapshots in deterministic
execution mode.
Signed-off-by: Pavel Dovgalyuk
---
hw/net/virtio-net.c | 4
1 file changed, 4 insertions(+)
diff --git a/hw/net/virtio
From: Pavel Dovgalyuk
The set of patches include the following modifications:
- fix for allowing record/replay with virtio-net
- fix of the record/replay test
Pavel Dovgalyuk (3):
replay: improve determinism of virtio-net
virtio-net: added replay blocker for guest_announce
tests/avocado
From: Pavel Dovgalyuk
This patch fixes the race condition in waiting for shutdown
of the replay linux test.
Signed-off-by: Pavel Dovgalyuk
Suggested-by: John Snow
---
tests/avocado/replay_linux.py | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/tests/avocado
701 - 800 of 2335 matches
Mail list logo