From: "Pavel Dovgalyuk" <dovgaluk@ispras.ru>
To: 'Kevin Wolf' <kwolf@redhat.com>,
'Pavel Dovgalyuk' <Pavel.Dovgaluk@ispras.ru>
Cc: edgar.iglesias@xilinx.com, peter.maydell@linaro.org,
igor.rubinov@gmail.com, mark.burton@greensocs.com,
real@ispras.ru, hines@cert.org, qemu-devel@nongnu.org,
maria.klimushenkova@ispras.ru, stefanha@redhat.com,
pbonzini@redhat.com, batuzovk@ispras.ru, alex.bennee@linaro.org,
fred.konrad@greensocs.com
Subject: Re: [Qemu-devel] [PATCH v3 5/5] replay: introduce block devices record/replay
Date: Thu, 10 Mar 2016 09:15:36 +0300 [thread overview]
Message-ID: <000301d17a94$438c1f20$caa45d60$@ru> (raw)
In-Reply-To: <20160309114321.GE5205@noname.redhat.com>
> From: Kevin Wolf [mailto:kwolf@redhat.com]
> Am 01.03.2016 um 12:08 hat Pavel Dovgalyuk geschrieben:
> > This patch introduces block driver that implement recording
> > and replaying of block devices' operations.
> > All block completion operations are added to the queue.
> > Queue is flushed at checkpoints and information about processed requests
> > is recorded to the log. In replay phase the queue is matched with
> > events read from the log. Therefore block devices requests are processed
> > deterministically.
> >
> > Signed-off-by: Pavel Dovgalyuk <pavel.dovgaluk@ispras.ru>
>
> I like this new version much better than the old one. :-)
Thanks for reviewing!
> > +static int blkreplay_open(BlockDriverState *bs, QDict *options, int flags,
> > + Error **errp)
> > +{
> > + Error *local_err = NULL;
> > + int ret;
> > +
> > + /* Open the image file */
> > + bs->file = bdrv_open_child(NULL, options, "image",
> > + bs, &child_file, false, &local_err);
> > + if (local_err) {
> > + ret = -EINVAL;
> > + error_propagate(errp, local_err);
> > + goto fail;
> > + }
> > +
> > + ret = 0;
> > +fail:
> > + if (ret < 0) {
> > + bdrv_unref_child(bs, bs->file);
>
> This is unnecessary because in error cases, bdrv_open_child() returns
> NULL. On the other hand, bdrv_unref_child() accepts a NULL child and
> just doesn't do anything then, so it's harmless.
Right, but this may be useful in case of future changes (if something else
will be initialized here).
Pavel Dovgalyuk
next prev parent reply other threads:[~2016-03-10 6:15 UTC|newest]
Thread overview: 14+ messages / expand[flat|nested] mbox.gz Atom feed top
2016-03-01 11:07 [Qemu-devel] [PATCH v3 0/5] Deterministic replay extensions Pavel Dovgalyuk
2016-03-01 11:07 ` [Qemu-devel] [PATCH v3 1/5] replay: character devices Pavel Dovgalyuk
2016-03-01 11:07 ` [Qemu-devel] [PATCH v3 2/5] icount: remove obsolete warp call Pavel Dovgalyuk
2016-03-09 12:05 ` Paolo Bonzini
2016-03-01 11:07 ` [Qemu-devel] [PATCH v3 3/5] replay: introduce new checkpoint for icount warp Pavel Dovgalyuk
2016-03-09 12:03 ` Paolo Bonzini
2016-03-10 9:10 ` Pavel Dovgalyuk
2016-03-10 10:24 ` Paolo Bonzini
2016-03-01 11:07 ` [Qemu-devel] [PATCH v3 4/5] block: add flush callback Pavel Dovgalyuk
2016-03-09 11:25 ` Kevin Wolf
2016-03-01 11:08 ` [Qemu-devel] [PATCH v3 5/5] replay: introduce block devices record/replay Pavel Dovgalyuk
2016-03-09 11:43 ` Kevin Wolf
2016-03-10 6:15 ` Pavel Dovgalyuk [this message]
2016-03-07 7:21 ` [Qemu-devel] [PATCH v3 0/5] Deterministic replay extensions dovgaluk
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='000301d17a94$438c1f20$caa45d60$@ru' \
--to=dovgaluk@ispras.ru \
--cc=Pavel.Dovgaluk@ispras.ru \
--cc=alex.bennee@linaro.org \
--cc=batuzovk@ispras.ru \
--cc=edgar.iglesias@xilinx.com \
--cc=fred.konrad@greensocs.com \
--cc=hines@cert.org \
--cc=igor.rubinov@gmail.com \
--cc=kwolf@redhat.com \
--cc=maria.klimushenkova@ispras.ru \
--cc=mark.burton@greensocs.com \
--cc=pbonzini@redhat.com \
--cc=peter.maydell@linaro.org \
--cc=qemu-devel@nongnu.org \
--cc=real@ispras.ru \
--cc=stefanha@redhat.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 a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).