All of lore.kernel.org
 help / color / mirror / Atom feed
From: Ciro Santilli <ciro.santilli@gmail.com>
To: Pavel Dovgalyuk <dovgaluk@ispras.ru>
Cc: "Pavel Dovgalyuk" <Pavel.Dovgaluk@ispras.ru>,
	qemu-devel@nongnu.org, kwolf@redhat.com,
	"Peter Maydell" <peter.maydell@linaro.org>,
	war2jordan@live.com, "Igor R" <boost.lists@gmail.com>,
	quintela@redhat.com, jasowang@redhat.com, mst@redhat.com,
	"Aleksandr Bezzubikov" <zuban32s@gmail.com>,
	maria.klimushenkova@ispras.ru, kraxel@redhat.com,
	"Thomas Dullien" <thomas.dullien@googlemail.com>,
	pbonzini@redhat.com, "Alex Bennée" <alex.bennee@linaro.org>
Subject: Re: [Qemu-devel] [RFC PATCH v6 00/20] replay additions
Date: Thu, 8 Feb 2018 07:35:05 +0000	[thread overview]
Message-ID: <CAFXrp_c09S6e9EnT7LOYox2YMiOXN_suFo30wfqcmzwRB8zx2A@mail.gmail.com> (raw)
In-Reply-To: <002401d3a010$8d551280$a7ff3780$@ru>

On Wed, Feb 7, 2018 at 12:38 PM, Pavel Dovgalyuk <dovgaluk@ispras.ru> wrote:

> > From: Ciro Santilli [mailto:ciro.santilli@gmail.com]
> > Can you provide a test branch somewhere so I can easily test it out?
>
> Here it is: https://github.com/ispras/qemu/tree/rr-180207
>
> Pavel Dovgalyuk
>
> Awesome! This worked with my test procedure described at:
https://stackoverflow.com/questions/46970215/how-to-use-qemus-deterministic-record-and-replay-feature-for-a-linux-kernel-boo

While we are a it, can we clarify the following points the docs?

1) Usage of the record/replay: mentions that `-net none` is required,
unless a network patch is applied.

But the network section that follows explains how to record network
requests, and I've tested it, so I think the `-net none` / patch
requirement is just outdated and should be removed.

2) There are mentions of "reverse execution" and "reverse debugging" on the
"Record/replay" section.

Are those supported? If yes, explain there how to use them. Otherwise,
remove the mentions.

I would love to see that feature!

3) Is the snapshot feature mentioned in the "Snapshotting" section
something specific to record and replay?

If yes, can we detail further how to use it besides passing
`rrsnapshot=snapshot_name`? How to create and restore the snapshots?

If not, why does the `rrsnapshot=snapshot_name` option exist?

4) Maybe give the required disk and network commands under "Usage of the
record/replay:"

 -drive file=disk.qcow,if=none,id=img-direct
 -drive driver=blkreplay,if=none,image=img-direct,id=img-blkreplay
 -device ide-hd,drive=img-blkreplay

 -netdev user,id=net1 -device rtl8139,netdev=net1
 -object filter-replay,id=replay,netdev=net1

People likely always want those, but it currently requires reading through
the whole doc file to put everything together.

  reply	other threads:[~2018-02-08  7:35 UTC|newest]

Thread overview: 49+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2018-02-07 12:03 [Qemu-devel] [RFC PATCH v6 00/20] replay additions Pavel Dovgalyuk
2018-02-07 12:03 ` [Qemu-devel] [RFC PATCH v6 01/20] cpu-exec: fix exception_index handling Pavel Dovgalyuk
2018-02-07 12:04 ` [Qemu-devel] [RFC PATCH v6 02/20] block: implement bdrv_snapshot_goto for blkreplay Pavel Dovgalyuk
2018-02-07 12:04 ` [Qemu-devel] [RFC PATCH v6 03/20] blkreplay: create temporary overlay for underlaying devices Pavel Dovgalyuk
2018-02-07 12:04 ` [Qemu-devel] [RFC PATCH v6 04/20] replay: disable default snapshot for record/replay Pavel Dovgalyuk
2018-02-07 12:04 ` [Qemu-devel] [RFC PATCH v6 05/20] replay: fix processing async events Pavel Dovgalyuk
2018-02-07 12:04 ` [Qemu-devel] [RFC PATCH v6 06/20] replay: fixed replay_enable_events Pavel Dovgalyuk
2018-02-07 12:04 ` [Qemu-devel] [RFC PATCH v6 07/20] replay: fix save/load vm for non-empty queue Pavel Dovgalyuk
2018-02-07 12:04 ` [Qemu-devel] [RFC PATCH v6 08/20] replay: added replay log format description Pavel Dovgalyuk
2018-02-07 12:04 ` [Qemu-devel] [RFC PATCH v6 09/20] replay: save prior value of the host clock Pavel Dovgalyuk
2018-02-07 12:04 ` [Qemu-devel] [RFC PATCH v6 10/20] replay/replay.c: bump REPLAY_VERSION again Pavel Dovgalyuk
2018-02-07 12:04 ` [Qemu-devel] [RFC PATCH v6 11/20] replay/replay-internal.c: track holding of replay_lock Pavel Dovgalyuk
2018-02-07 12:05 ` [Qemu-devel] [RFC PATCH v6 12/20] replay: make locking visible outside replay code Pavel Dovgalyuk
2018-02-07 12:05 ` [Qemu-devel] [RFC PATCH v6 13/20] replay: push replay_mutex_lock up the call tree Pavel Dovgalyuk
2018-02-07 12:05 ` [Qemu-devel] [RFC PATCH v6 14/20] replay: don't destroy mutex at exit Pavel Dovgalyuk
2018-02-07 12:05 ` [Qemu-devel] [RFC PATCH v6 15/20] replay: check return values of fwrite Pavel Dovgalyuk
2018-02-07 12:05 ` [Qemu-devel] [RFC PATCH v6 16/20] replay: avoid recursive call of checkpoints Pavel Dovgalyuk
2018-02-07 12:05 ` [Qemu-devel] [RFC PATCH v6 17/20] scripts/replay-dump.py: replay log dumper Pavel Dovgalyuk
2018-02-07 12:05 ` [Qemu-devel] [RFC PATCH v6 18/20] replay: don't process async events when warping the clock Pavel Dovgalyuk
2018-02-07 12:05 ` [Qemu-devel] [RFC PATCH v6 19/20] replay: save vmstate of the asynchronous events Pavel Dovgalyuk
2018-02-07 12:05 ` [Qemu-devel] [RFC PATCH v6 20/20] replay: don't drain/flush bdrv queue while RR is working Pavel Dovgalyuk
2018-02-07 12:15 ` [Qemu-devel] [RFC PATCH v6 00/20] replay additions Ciro Santilli
2018-02-07 12:38   ` Pavel Dovgalyuk
2018-02-08  7:35     ` Ciro Santilli [this message]
2018-02-10  0:09       ` Ciro Santilli
2018-02-12  5:47         ` Pavel Dovgalyuk
2018-02-13  5:58           ` Ciro Santilli
2018-02-13  6:50             ` Pavel Dovgalyuk
2018-02-13  9:07               ` Ciro Santilli
2018-02-13  9:58                 ` Pavel Dovgalyuk
2018-02-13 10:26                   ` Pavel Dovgalyuk
2018-02-13 10:49                     ` Peter Maydell
2018-02-13 10:52                       ` Pavel Dovgalyuk
2018-02-13 11:37                         ` Ciro Santilli
2018-02-13 12:13                           ` Pavel Dovgalyuk
2018-02-14 12:39                       ` Pavel Dovgalyuk
2018-02-19  8:02                         ` Pavel Dovgalyuk
2018-02-19 11:15                           ` Ciro Santilli
2018-02-20  9:46                             ` Pavel Dovgalyuk
2018-02-20 23:59                               ` Ciro Santilli
2018-02-21  6:41                                 ` Pavel Dovgalyuk
2018-02-21 22:40                                   ` Ciro Santilli
2018-02-22  7:06                                     ` Pavel Dovgalyuk
2018-02-22  7:10                                       ` Pavel Dovgalyuk
2018-02-22 17:52                                         ` Ciro Santilli
2018-02-12  6:53       ` Pavel Dovgalyuk
2018-02-14  6:21     ` Ciro Santilli
2018-02-14  9:20       ` Pavel Dovgalyuk
2018-02-07 13:38 ` no-reply

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=CAFXrp_c09S6e9EnT7LOYox2YMiOXN_suFo30wfqcmzwRB8zx2A@mail.gmail.com \
    --to=ciro.santilli@gmail.com \
    --cc=Pavel.Dovgaluk@ispras.ru \
    --cc=alex.bennee@linaro.org \
    --cc=boost.lists@gmail.com \
    --cc=dovgaluk@ispras.ru \
    --cc=jasowang@redhat.com \
    --cc=kraxel@redhat.com \
    --cc=kwolf@redhat.com \
    --cc=maria.klimushenkova@ispras.ru \
    --cc=mst@redhat.com \
    --cc=pbonzini@redhat.com \
    --cc=peter.maydell@linaro.org \
    --cc=qemu-devel@nongnu.org \
    --cc=quintela@redhat.com \
    --cc=thomas.dullien@googlemail.com \
    --cc=war2jordan@live.com \
    --cc=zuban32s@gmail.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.