From: "Daniel P. Berrange" <berrange@redhat.com>
To: Peter Lieven <pl@kamp.de>
Cc: Kevin Wolf <kwolf@redhat.com>,
qemu-block@nongnu.org, qemu-devel@nongnu.org, lersek@redhat.com,
den@openvz.org, mreitz@redhat.com, eblake@redhat.com
Subject: Re: [Qemu-devel] [PATCH V2 5/8] block/qcow2: read and write the compress format extension
Date: Thu, 13 Jul 2017 16:01:48 +0100 [thread overview]
Message-ID: <20170713150148.GQ4011@redhat.com> (raw)
In-Reply-To: <37d97fcb-aa71-1ed4-2134-6d308da7b527@kamp.de>
On Thu, Jul 13, 2017 at 05:00:39PM +0200, Peter Lieven wrote:
> Am 13.07.2017 um 16:58 schrieb Daniel P. Berrange:
> > On Thu, Jul 13, 2017 at 04:18:13PM +0200, Peter Lieven wrote:
> > > Okay, so it has to be a mix of QAPI parsing and manual parameter checking,
> > > right?
> > Yeah. It does feel like a valid RFE for QAPI to add a permitted range to
> > 'int' types though, which would simplify the code in future.
> >
> > > I currently have the following:
> > >
> > > options = qemu_opts_to_qdict(opts, NULL);
> > > qdict_extract_subqdict(options, &compressopts, "compress.");
> > > v = qobject_input_visitor_new_keyval(QOBJECT(compressopts));
> > > visit_start_struct(v, NULL, NULL, 0, &local_err);
> > > if (local_err) {
> > > ret= -EINVAL;
> > > goto finish;
> > > }
> > > visit_type_Qcow2Compress_members(v, &compress, &local_err);
> > > if (local_err) {
> > > ret= -EINVAL;
> > > goto finish;
> > > }
> > > visit_end_struct(v, NULL);
> > > visit_free(v);
> > > QDECREF(compressopts);
> > > QDECREF(options)
> > Looks good.
> >
> > > And I have the following 2 questions:
> > > a) I have to specifiy compress.format and compress.level otherwise I will get an error. How can I fix that the settings are optional?
> > Put an '*' as the first character of any field name if it should be optional.
> >
> > > b) If I just specify a compress.format can I default the compress.level to 0 without an error?
> > I believe you'd get compress.level as 0 automatically for an 'int' type.
>
> I still face the issue that I now always have to specify a compress.format.
> I tried to solve it like this:
[snip]
that's not needed if you name the parameter '*level' in the QAPI schema
Regards,
Daniel
--
|: https://berrange.com -o- https://www.flickr.com/photos/dberrange :|
|: https://libvirt.org -o- https://fstop138.berrange.com :|
|: https://entangle-photo.org -o- https://www.instagram.com/dberrange :|
next prev parent reply other threads:[~2017-07-13 15:02 UTC|newest]
Thread overview: 50+ messages / expand[flat|nested] mbox.gz Atom feed top
2017-06-29 10:57 [Qemu-devel] [PATCH V2 0/8] add Qcow2 compress format extension Peter Lieven
2017-06-29 10:57 ` [Qemu-devel] [PATCH V2 1/8] docs: add compress format extension to qcow2 spec Peter Lieven
2017-07-10 12:58 ` Kevin Wolf
2017-07-10 13:27 ` Peter Lieven
2017-07-10 13:50 ` Kevin Wolf
2017-07-10 14:31 ` Eric Blake
2017-06-29 10:57 ` [Qemu-devel] [PATCH V2 2/8] qapi: add compress parameters to Qcow2 Blockdev options Peter Lieven
2017-07-10 13:10 ` Kevin Wolf
2017-07-10 13:24 ` Peter Lieven
2017-07-10 13:27 ` Daniel P. Berrange
2017-07-10 13:30 ` Kevin Wolf
2017-07-10 13:32 ` Peter Lieven
2017-07-13 8:45 ` Peter Lieven
2017-07-13 8:52 ` Kevin Wolf
2017-07-13 9:18 ` Daniel P. Berrange
2017-06-29 10:57 ` [Qemu-devel] [PATCH V2 3/8] block/qcow2: parse compress create options Peter Lieven
2017-07-10 13:52 ` Daniel P. Berrange
2017-06-29 10:57 ` [Qemu-devel] [PATCH V2 4/8] qemu-img: add documentation for compress settings Peter Lieven
2017-07-10 13:21 ` Kevin Wolf
2017-06-29 10:57 ` [Qemu-devel] [PATCH V2 5/8] block/qcow2: read and write the compress format extension Peter Lieven
2017-07-10 13:25 ` Kevin Wolf
2017-07-10 13:29 ` Peter Lieven
2017-07-10 13:34 ` Kevin Wolf
2017-07-10 13:44 ` Daniel P. Berrange
2017-07-10 13:46 ` Peter Lieven
2017-07-10 13:58 ` Daniel P. Berrange
2017-07-10 13:52 ` Kevin Wolf
2017-07-10 13:55 ` Daniel P. Berrange
2017-07-13 8:44 ` Peter Lieven
2017-07-13 9:21 ` Daniel P. Berrange
2017-07-13 13:49 ` Peter Lieven
2017-07-13 14:00 ` Daniel P. Berrange
2017-07-13 14:03 ` Peter Lieven
2017-07-13 14:07 ` Daniel P. Berrange
2017-07-13 14:18 ` Peter Lieven
2017-07-13 14:58 ` Daniel P. Berrange
2017-07-13 15:00 ` Peter Lieven
2017-07-13 15:01 ` Daniel P. Berrange [this message]
2017-07-13 15:02 ` Peter Lieven
2017-07-13 15:06 ` Daniel P. Berrange
2017-07-13 15:13 ` Peter Lieven
2017-07-13 15:17 ` Daniel P. Berrange
2017-07-13 15:21 ` Peter Lieven
2017-07-13 15:21 ` Eric Blake
2017-06-29 10:57 ` [Qemu-devel] [PATCH V2 6/8] block/qcow2: optimize qcow2_co_pwritev_compressed Peter Lieven
2017-06-29 10:57 ` [Qemu-devel] [PATCH V2 7/8] block/qcow2: start using the compress format extension Peter Lieven
2017-06-29 10:57 ` [Qemu-devel] [PATCH V2 8/8] block/qcow2: add lzo compress format Peter Lieven
2017-07-06 23:49 ` [Qemu-devel] [PATCH V2 0/8] add Qcow2 compress format extension no-reply
2017-07-07 0:02 ` Fam Zheng
2017-07-10 12:36 ` Peter Lieven
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=20170713150148.GQ4011@redhat.com \
--to=berrange@redhat.com \
--cc=den@openvz.org \
--cc=eblake@redhat.com \
--cc=kwolf@redhat.com \
--cc=lersek@redhat.com \
--cc=mreitz@redhat.com \
--cc=pl@kamp.de \
--cc=qemu-block@nongnu.org \
--cc=qemu-devel@nongnu.org \
/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).