From: "Richard W.M. Jones" <rjones@redhat.com>
To: Eric Blake <eblake@redhat.com>
Cc: "Michael S. Tsirkin" <mst@redhat.com>,
Eduardo Habkost <ehabkost@redhat.com>,
Kevin Wolf <kwolf@redhat.com>,
qemu-block@nongnu.org, qemu-devel@nongnu.org,
stefanha@redhat.com, Max Reitz <mreitz@redhat.com>,
"Dr. David Alan Gilbert" <dgilbert@redhat.com>
Subject: Re: [Qemu-devel] [Qemu-block] storing machine data in qcow images?
Date: Tue, 5 Jun 2018 20:58:55 +0100 [thread overview]
Message-ID: <20180605195855.GC1455@redhat.com> (raw)
In-Reply-To: <a9fdbe0f-2c39-7da3-11f2-6752b74cce08@redhat.com>
On Tue, Jun 05, 2018 at 02:54:07PM -0500, Eric Blake wrote:
> On 06/05/2018 02:47 PM, Michael S. Tsirkin wrote:
>
> >>>Layer 1:
> >>> The string shall always be a JSON 'object'; i.e. of the form
> >>> { "something": ... , "more": ... }
> >>>
> >>> The key strings shall be non-null and non-empty and shall
> >>> be unique.
>
> >>
> >>I think it would be simpler if layer 0 simply provided a list of
> >>names/value pairs, where names are ascii strings, and values are
> >>binary data[1]. It would make layer 1 unnecessary, and allow (3)
> >>and (4) to happen.
> >>
> >>[1] In other words, Rich's proposal of "named blobs":
> >>https://www.mail-archive.com/qemu-block@nongnu.org/msg37856.html
> >
> >I think simple is beautiful, too. But assuming they
> >really are binary how are blobs encoded?
> >Did binary really mean UTF-8 here?
By binary I actually meant binary. The idea is you could
store things like PNG images in them (for icons).
> Binary blobs can always be base64 encoded for representation within
> a valid JSON UTF-8 string (and we already have several QMP
> interfaces that utilize base64 encoding to pass through what is
> otherwise invalid UTF-8). It does inflate things slightly compared
> to a format that allows a raw length coupled with raw data, but that
> is not necessarily a problem.
Of course how we represent them externally and/or while
using QMP / qemu-img to store and retrieve them is up for grabs.
Doesn't JSON allow binary to be encoded? (Knowing how poorly
done JSON is, I wouldn't be surprised if not)
Rich.
--
Richard Jones, Virtualization Group, Red Hat http://people.redhat.com/~rjones
Read my programming and virtualization blog: http://rwmj.wordpress.com
virt-top is 'top' for virtual machines. Tiny program with many
powerful monitoring features, net stats, disk stats, logging, etc.
http://people.redhat.com/~rjones/virt-top
next prev parent reply other threads:[~2018-06-05 19:59 UTC|newest]
Thread overview: 157+ messages / expand[flat|nested] mbox.gz Atom feed top
2018-05-18 15:30 [Qemu-devel] storing machine data in qcow images? Michael S. Tsirkin
2018-05-18 16:49 ` Eduardo Habkost
2018-05-18 17:09 ` Daniel P. Berrangé
2018-05-18 17:41 ` Eduardo Habkost
2018-05-19 6:05 ` Markus Armbruster
2018-05-21 18:29 ` Eduardo Habkost
2018-05-21 18:44 ` Daniel P. Berrangé
2018-05-21 19:01 ` Eduardo Habkost
2018-05-23 11:19 ` Markus Armbruster
2018-05-23 12:13 ` Eduardo Habkost
2018-05-23 16:35 ` Markus Armbruster
2018-05-29 14:06 ` Dr. David Alan Gilbert
2018-06-05 21:58 ` Michal Suchánek
2018-05-21 20:18 ` Daniel P. Berrangé
2018-05-21 20:33 ` Eduardo Habkost
2018-05-24 9:58 ` Kashyap Chamarthy
2018-05-22 7:35 ` Gerd Hoffmann
2018-05-22 10:53 ` Eduardo Habkost
2018-05-22 14:19 ` Michael S. Tsirkin
2018-05-22 15:02 ` Kevin Wolf
2018-05-22 15:14 ` Eduardo Habkost
2018-05-23 2:12 ` Fam Zheng
2018-05-23 9:16 ` Kevin Wolf
2018-05-23 14:46 ` Michael S. Tsirkin
2018-05-24 11:17 ` Richard W.M. Jones
2018-05-29 14:03 ` Dr. David Alan Gilbert
2018-05-29 14:14 ` Eduardo Habkost
2018-05-29 14:51 ` Richard W.M. Jones
2018-05-29 15:31 ` Dr. David Alan Gilbert
2018-05-22 8:50 ` Philipp Hahn
2018-05-24 11:32 ` Richard W.M. Jones
2018-05-24 14:56 ` Michael S. Tsirkin
2018-05-24 15:08 ` Kevin Wolf
2018-05-24 15:19 ` Michael S. Tsirkin
2018-05-24 15:20 ` Richard W.M. Jones
2018-05-24 16:25 ` Markus Armbruster
2018-05-28 18:10 ` Max Reitz
2018-05-28 18:30 ` Richard W.M. Jones
2018-05-28 18:38 ` Kevin Wolf
2018-05-28 18:44 ` Max Reitz
2018-05-28 19:09 ` Kevin Wolf
2018-05-29 9:23 ` Max Reitz
2018-05-29 10:14 ` Kevin Wolf
2018-05-29 13:16 ` Eduardo Habkost
2018-05-28 21:20 ` Richard W.M. Jones
2018-05-28 21:25 ` Richard W.M. Jones
2018-05-29 6:44 ` Kevin Wolf
2018-05-29 10:14 ` Max Reitz
2018-06-05 9:21 ` Dr. David Alan Gilbert
2018-06-05 19:03 ` Eduardo Habkost
2018-06-05 19:47 ` Michael S. Tsirkin
2018-06-05 19:54 ` [Qemu-devel] [Qemu-block] " Eric Blake
2018-06-05 19:58 ` Richard W.M. Jones [this message]
2018-06-05 20:09 ` Eric Blake
2018-06-05 20:28 ` Michael S. Tsirkin
2018-06-05 20:46 ` Eric Blake
2018-06-05 21:26 ` Michael S. Tsirkin
2018-06-06 8:07 ` Dr. David Alan Gilbert
2018-06-06 6:23 ` Gerd Hoffmann
2018-06-05 20:06 ` Michael S. Tsirkin
2018-06-06 6:26 ` [Qemu-devel] " Gerd Hoffmann
2018-06-06 9:44 ` Dr. David Alan Gilbert
2018-06-06 13:35 ` Eduardo Habkost
2018-06-06 11:02 ` Max Reitz
2018-06-06 11:14 ` Dr. David Alan Gilbert
2018-06-06 11:26 ` Max Reitz
2018-06-06 12:00 ` Dr. David Alan Gilbert
2018-06-06 12:59 ` Max Reitz
2018-06-06 14:31 ` Dr. David Alan Gilbert
2018-06-06 14:37 ` Daniel P. Berrangé
2018-06-06 14:42 ` Dr. David Alan Gilbert
2018-06-06 14:51 ` Max Reitz
2018-06-06 15:05 ` Dr. David Alan Gilbert
2018-06-06 15:36 ` Eric Blake
2018-06-06 16:11 ` Michal Suchánek
2018-06-06 16:37 ` Eric Blake
2018-06-06 16:32 ` Daniel P. Berrangé
2018-06-06 16:36 ` Dr. David Alan Gilbert
2018-06-07 10:02 ` Andrea Bolognani
2018-06-07 10:22 ` Daniel P. Berrangé
2018-06-07 11:17 ` Andrea Bolognani
2018-06-07 12:38 ` Daniel P. Berrangé
2018-06-07 13:49 ` Dr. David Alan Gilbert
2018-06-07 14:06 ` Andrea Bolognani
2018-06-07 14:45 ` Dr. David Alan Gilbert
2018-06-07 14:56 ` Andrea Bolognani
2018-06-07 15:25 ` Dr. David Alan Gilbert
2018-06-07 20:38 ` Gerd Hoffmann
2018-06-07 10:32 ` Richard W.M. Jones
2018-06-07 10:35 ` Dr. David Alan Gilbert
2018-06-07 10:36 ` Daniel P. Berrangé
2018-06-07 10:54 ` Andrea Bolognani
2018-06-07 19:24 ` Laszlo Ersek
2018-06-08 8:21 ` Dr. David Alan Gilbert
2018-06-08 8:41 ` Daniel P. Berrangé
2018-06-08 8:53 ` Dr. David Alan Gilbert
2018-06-07 21:19 ` Michael S. Tsirkin
2018-06-07 21:18 ` Michael S. Tsirkin
2018-06-07 10:51 ` Andrea Bolognani
2018-06-07 19:38 ` Laszlo Ersek
2018-06-06 17:49 ` Max Reitz
2018-06-06 15:09 ` Michael S. Tsirkin
2018-06-06 17:06 ` Max Reitz
2018-06-07 21:43 ` Michael S. Tsirkin
2018-06-09 21:34 ` Max Reitz
2018-06-11 2:06 ` Michael S. Tsirkin
2018-06-11 8:16 ` Michal Suchánek
2018-06-06 11:42 ` Richard W.M. Jones
2018-06-06 11:48 ` Daniel P. Berrangé
2018-06-06 11:53 ` Max Reitz
2018-06-06 12:03 ` Dr. David Alan Gilbert
2018-06-06 13:15 ` Max Reitz
2018-06-06 12:29 ` Richard W.M. Jones
2018-06-06 11:22 ` [Qemu-devel] [Qemu-block] " Peter Krempa
2018-06-06 10:32 ` [Qemu-devel] " Michal Suchánek
2018-06-06 11:02 ` Max Reitz
2018-06-06 11:19 ` Michal Suchánek
2018-06-06 11:32 ` Max Reitz
2018-06-06 11:37 ` Dr. David Alan Gilbert
2018-06-06 11:44 ` Max Reitz
2018-06-06 12:16 ` Dr. David Alan Gilbert
2018-06-06 13:22 ` Max Reitz
2018-06-06 14:02 ` Dr. David Alan Gilbert
2018-06-06 14:33 ` Max Reitz
2018-06-06 14:41 ` Dr. David Alan Gilbert
2018-06-06 14:55 ` Max Reitz
2018-06-06 15:25 ` Michal Suchánek
2018-06-06 18:02 ` Max Reitz
2018-06-06 18:33 ` Michal Suchánek
2018-06-06 18:36 ` Eduardo Habkost
2018-06-07 18:27 ` [Qemu-devel] [Qemu-block] " Kashyap Chamarthy
2018-06-06 13:42 ` [Qemu-devel] " Eduardo Habkost
2018-06-06 14:55 ` Michael S. Tsirkin
2018-06-06 14:57 ` Max Reitz
2018-06-11 14:10 ` Kevin Wolf
2018-06-06 14:46 ` Michael S. Tsirkin
2018-06-06 15:04 ` Max Reitz
2018-06-06 11:43 ` Michal Suchánek
2018-06-06 11:52 ` Max Reitz
2018-06-06 12:13 ` Michal Suchánek
2018-06-06 13:14 ` Max Reitz
2018-06-06 13:45 ` Michal Suchánek
2018-06-06 13:50 ` Daniel P. Berrangé
2018-06-06 14:14 ` Eduardo Habkost
2018-06-06 14:21 ` Max Reitz
2018-06-06 14:24 ` Daniel P. Berrangé
2018-06-06 14:17 ` Max Reitz
2018-06-06 16:10 ` Eduardo Habkost
2018-06-06 18:09 ` Max Reitz
2018-06-11 8:44 ` Richard W.M. Jones
2018-06-06 11:40 ` Richard W.M. Jones
2018-06-06 14:31 ` Michael S. Tsirkin
2018-06-06 14:43 ` Michael S. Tsirkin
2018-06-06 14:57 ` Eric Blake
2018-06-06 20:39 ` Eric Blake
2018-06-06 21:01 ` Gerd Hoffmann
2018-06-06 15:02 ` Max Reitz
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=20180605195855.GC1455@redhat.com \
--to=rjones@redhat.com \
--cc=dgilbert@redhat.com \
--cc=eblake@redhat.com \
--cc=ehabkost@redhat.com \
--cc=kwolf@redhat.com \
--cc=mreitz@redhat.com \
--cc=mst@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).