[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-devel] [for-4.2 PATCH 0/6] Block-related record/replay fixes
From: |
Alex Bennée |
Subject: |
Re: [Qemu-devel] [for-4.2 PATCH 0/6] Block-related record/replay fixes |
Date: |
Wed, 18 Sep 2019 11:42:26 +0100 |
User-agent: |
mu4e 1.3.4; emacs 27.0.50 |
Pavel Dovgalyuk <address@hidden> writes:
>> -----Original Message-----
>> From: Alex Bennée [mailto:address@hidden]
>> Sent: Tuesday, September 17, 2019 10:02 PM
>> To: Pavel Dovgalyuk
>> Cc: address@hidden; address@hidden; address@hidden;
>> address@hidden; address@hidden; address@hidden;
>> address@hidden; address@hidden; address@hidden; address@hidden;
>> address@hidden; address@hidden; address@hidden; address@hidden;
>> address@hidden; address@hidden; address@hidden;
>> address@hidden; address@hidden; address@hidden
>> Subject: Re: [for-4.2 PATCH 0/6] Block-related record/replay fixes
>>
>>
>> Pavel Dovgalyuk <address@hidden> writes:
>>
>> > The set of patches include the block-related updates
>> > of the record/replay icount feature:
>> > - application of 'snapshot' option on the file layer instead of
>> > the top one: command line and documentation fix
>> > - implementation of bdrv_snapshot_goto for blkreplay driver
>> > - start/stop fix in replay mode with attached block devices
>> > - record/replay of bh oneshot events, used in the block layer
>>
>> Can we come up with a reasonable smoke test to verify record/replay is
>> functional? AIUI we don't need a full OS but we do need a block device
>> to store the replay data. Could we use one of the simple system tests
>> like "memory" and run that through a record and replay cycle?
>
> That's would be great.
> I'm not familiar with testing framework and couldn't find "memory"
> test that you refer to.
The memory test code is in tests/tcg/multiarch/system and gets combined
with the boot code for whichever target can build it. For example on
aarch64 it is run like:
timeout 15 $BLD/aarch64-softmmu/qemu-system-aarch64 -monitor none -display
none -chardev file,path=memory.out,id=output -M virt -cpu max -display none
-semihosting-config enable=on,target=native,chardev=output -kernel memory
The test binaries will be in $BLD/tests/tcg/aarch64-softmmu and are
built when you run "make check-tcg" and have either the appropriate
cross compilers installed on your system or docker enabled and setup
(see docs/devel/testing.rst).
> Replay test must at least the following:
> 1. record some execution
> 2. replay that execution
>
> And there could be several endings:
> 1. record stalled
> 2. record crashed
> 3. replay stalled
> 4. replay crashed
> 5. all executions finished successfully
If you can provide an appropriate set of invocations I can plumb them
into the Makefiles for you.
>
> Pavel Dovgalyuk
>
>>
>> >
>> > ---
>> >
>> > Pavel Dovgaluk (6):
>> > block: implement bdrv_snapshot_goto for blkreplay
>> > replay: disable default snapshot for record/replay
>> > replay: update docs for record/replay with block devices
>> > replay: don't drain/flush bdrv queue while RR is working
>> > replay: finish record/replay before closing the disks
>> > replay: add BH oneshot event for block layer
>> >
>> >
>> > block/blkreplay.c | 8 ++++++++
>> > block/block-backend.c | 9 ++++++---
>> > block/io.c | 32 ++++++++++++++++++++++++++++++--
>> > block/iscsi.c | 5 +++--
>> > block/nfs.c | 6 ++++--
>> > block/null.c | 4 +++-
>> > block/nvme.c | 6 ++++--
>> > block/rbd.c | 5 +++--
>> > block/vxhs.c | 5 +++--
>> > cpus.c | 2 --
>> > docs/replay.txt | 12 +++++++++---
>> > include/sysemu/replay.h | 4 ++++
>> > replay/replay-events.c | 16 ++++++++++++++++
>> > replay/replay-internal.h | 1 +
>> > replay/replay.c | 2 ++
>> > stubs/Makefile.objs | 1 +
>> > stubs/replay-user.c | 9 +++++++++
>> > vl.c | 11 +++++++++--
>> > 18 files changed, 115 insertions(+), 23 deletions(-)
>> > create mode 100644 stubs/replay-user.c
>>
>>
>> --
>> Alex Bennée
--
Alex Bennée
- Re: [Qemu-devel] [for-4.2 PATCH 3/6] replay: update docs for record/replay with block devices, (continued)
[Qemu-devel] [for-4.2 PATCH 4/6] replay: don't drain/flush bdrv queue while RR is working, Pavel Dovgalyuk, 2019/09/17
[Qemu-devel] [for-4.2 PATCH 5/6] replay: finish record/replay before closing the disks, Pavel Dovgalyuk, 2019/09/17
[Qemu-devel] [for-4.2 PATCH 6/6] replay: add BH oneshot event for block layer, Pavel Dovgalyuk, 2019/09/17
Re: [Qemu-devel] [for-4.2 PATCH 0/6] Block-related record/replay fixes, no-reply, 2019/09/17
Re: [Qemu-devel] [for-4.2 PATCH 0/6] Block-related record/replay fixes, no-reply, 2019/09/17
Re: [Qemu-devel] [for-4.2 PATCH 0/6] Block-related record/replay fixes, Alex Bennée, 2019/09/17