From: Kashyap Chamarthy <kchamart@redhat.com>
To: Kevin Wolf <kwolf@redhat.com>
Cc: qemu-block@nongnu.org, qemu-devel@nongnu.org,
stefanha@redhat.com, mreitz@redhat.com
Subject: Re: [Qemu-devel] [Qemu-block] blockdev-commit design
Date: Tue, 3 Oct 2017 10:00:26 +0200 [thread overview]
Message-ID: <20171003080026.6nmw6pdpcuo2sqoe@eukaryote> (raw)
In-Reply-To: <20171002153252.GF4362@localhost.localdomain>
On Mon, Oct 02, 2017 at 05:32:52PM +0200, Kevin Wolf wrote:
> Am 02.10.2017 um 17:01 hat Kashyap Chamarthy geschrieben:
> > On Tue, Sep 26, 2017 at 07:59:42PM +0200, Kevin Wolf wrote:
[...]
> > {
> > "execute": "block-commit",
> > "arguments": {
> > "device": "node-D",
> > "job-id": "job0",
> > "top": "d.qcow2",
> > "base": "a.qcow2"
> > }
> > }
> >
> > So when merging the top-most layer (D), there's at least one
> > scenario where we _are_ specifying the "active layer". And 'top'
> > _is_ mandatory as seen above.
> >
> > So I wonder if I'm misinterpreting your wording.
>
> The point is that you specify both "device" and "top". There is no real
> use in specifying "device", because "top" already identifies the node.
> (Of course, file names aren't a good way to identify nodes, so the
> assumption is that they are replaced by node names.)
Ah, thanks. Now I recall that the existing `block-commit` is the only
command (among mirror, backup, stream, and commit) that doesn't yet
support 'node-name' / 'snapshot-node-name'. Hence your proposal, to
bring it more in-line w/ blockdev-{mirror,backup}, and `block-stream`[*]
(which accepts 'base-node', and its "device" parameter takes a named
node).
[*] https://lists.gnu.org/archive/html/qemu-block/2017-05/msg01230.html
> In the active commit case, it is just duplicated information, but in the
> case of an intermediate commit, it is additional information that needs
> to be provided without good reason.
It's clearer now, thank you.
> > (2) Also, just for my own education, can you mind expanding a bit more
> > about the "there can be more than one active layer" scenario?
>
> Something like this, C is the backing file of both D and E:
>
>
> +--- D
> |
> A <- B <- C <---+
> |
> +--- E
>
> I want to commit C into B. But do I specify D or E as the active layer?
> They are both active layers above C.
Ah-ha, yes, it's the "thin provisoning" case.
Thanks for the explanation.
--
/kashyap
prev parent reply other threads:[~2017-10-03 8:01 UTC|newest]
Thread overview: 7+ messages / expand[flat|nested] mbox.gz Atom feed top
2017-09-26 17:59 [Qemu-devel] blockdev-commit design Kevin Wolf
2017-09-26 18:29 ` Eric Blake
2017-09-26 19:11 ` Kevin Wolf
2017-09-27 16:29 ` Max Reitz
2017-10-02 15:01 ` [Qemu-devel] [Qemu-block] " Kashyap Chamarthy
2017-10-02 15:32 ` Kevin Wolf
2017-10-03 8:00 ` Kashyap Chamarthy [this message]
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=20171003080026.6nmw6pdpcuo2sqoe@eukaryote \
--to=kchamart@redhat.com \
--cc=kwolf@redhat.com \
--cc=mreitz@redhat.com \
--cc=qemu-block@nongnu.org \
--cc=qemu-devel@nongnu.org \
--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).