All of lore.kernel.org
 help / color / mirror / Atom feed
From: Eric Blake <eblake@redhat.com>
To: Markus Armbruster <armbru@redhat.com>, qemu-devel@nongnu.org
Cc: mdroth@linux.vnet.ibm.com
Subject: Re: [Qemu-devel] [PATCH RFC v4 30/32] qapi: New QMP command query-schema for QMP schema introspection
Date: Thu, 3 Sep 2015 21:12:28 -0600	[thread overview]
Message-ID: <55E90C1C.9050802@redhat.com> (raw)
In-Reply-To: <55E8FBE4.4050307@redhat.com>

[-- Attachment #1: Type: text/plain, Size: 2088 bytes --]

On 09/03/2015 08:03 PM, Eric Blake wrote:
> On 09/03/2015 08:30 AM, Markus Armbruster wrote:
>> qapi/introspect.json defines the introspection schema.  It's designed
>> for QMP introspection, but should do for similar uses, such as QGA.
> 
> [review in this sub-thread; for comments on 'int' munging or other
> followups, see other subthread]
> 
> There is at least one definite bug (see multiple references below to
> [1]), and several ideas for cleanups, but in general, I think that the
> remaining changes are going to be small enough that I'd probably be okay
> if v5 started life with:
> Reviewed-by: Eric Blake <eblake@redhat.com>
> (Of course, you have every right to not add the R-b, especially if you
> want me to do another close review :)
> 

> 
>> +
>> +    { "name": "BlockdevOptions", "meta-type": "object",
>> +      "members": [
>> +          { "name": "kind", "type": "BlockdevOptionsKind" } ],
> 
> [1] Ouch.  That should be "name": "type".  I pointed out the bug in v3,
> but it looks like it still hasn't been fixed.  Or rather, that our
> attempt to fix it wasn't correct.
> 

>> +    def _gen_variants(self, tag_name, variants):
>> +        return {'tag': tag_name or 'type',
> 
> [1] Ouch. Why are we still printing 'kind' as the name for simple
> unions?  Oh, it's because tag_name is ALWAYS provided by the visitor, so
> the "or 'type'" clause never fires.

Not quite the right comment.  'tag' is being output correctly (tag_name
was indeed None), what was wrong was the 'members':[] array (which was
assuming the member was named 'kind').

>   I have a pending patch to change
> the C code to generate 'type' as the C code name to match the wire ABI;
> but until that patch is in, I think a hack solution might be to fix the
> visitor to supply None instead of a tag_name for simple unions.  I'll
> respond to the appropriate earlier patch.

Rather, 3 earlier patches.  See my comments on 2, 10, and 11.

-- 
Eric Blake   eblake redhat com    +1-919-301-3266
Libvirt virtualization library http://libvirt.org


[-- Attachment #2: OpenPGP digital signature --]
[-- Type: application/pgp-signature, Size: 604 bytes --]

  reply	other threads:[~2015-09-04  3:12 UTC|newest]

Thread overview: 75+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2015-09-03 14:29 [Qemu-devel] [PATCH RFC v4 00/32] qapi: QMP introspection Markus Armbruster
2015-09-03 14:29 ` [Qemu-devel] [PATCH RFC v4 01/32] qapi: Rename class QAPISchema to QAPISchemaParser Markus Armbruster
2015-09-03 15:55   ` Daniel P. Berrange
2015-09-03 14:29 ` [Qemu-devel] [PATCH RFC v4 02/32] qapi: New QAPISchema intermediate reperesentation Markus Armbruster
2015-09-03 16:11   ` Daniel P. Berrange
2015-09-04  7:12     ` Markus Armbruster
2015-09-04  8:51       ` Daniel P. Berrange
2015-09-04 11:13         ` Markus Armbruster
2015-09-04  3:05   ` Eric Blake
2015-09-04 12:34   ` Eric Blake
2015-09-04 14:40     ` Markus Armbruster
2015-09-04 23:51       ` [Qemu-devel] [PATCH RFC v4 02.5/32] qapi: Hide internal data members of schema objects Eric Blake
2015-09-05 13:19         ` Eric Blake
2015-09-05 13:25           ` Eric Blake
2015-09-05 13:45             ` Eric Blake
2015-09-07  6:57               ` Markus Armbruster
2015-09-07  6:58         ` Markus Armbruster
2015-09-03 14:29 ` [Qemu-devel] [PATCH RFC v4 03/32] qapi: QAPISchema code generation helper methods Markus Armbruster
2015-09-03 16:13   ` Daniel P. Berrange
2015-09-03 14:29 ` [Qemu-devel] [PATCH RFC v4 04/32] qapi: New QAPISchemaVisitor Markus Armbruster
2015-09-03 16:16   ` Daniel P. Berrange
2015-09-03 14:29 ` [Qemu-devel] [PATCH RFC v4 05/32] tests/qapi-schema: Convert test harness to QAPISchemaVisitor Markus Armbruster
2015-09-03 16:18   ` Daniel P. Berrange
2015-09-03 16:24   ` Eric Blake
2015-09-05 13:23   ` Eric Blake
2015-09-07  7:10     ` Markus Armbruster
2015-09-03 14:29 ` [Qemu-devel] [PATCH RFC v4 06/32] qapi: Split up some typedefs to ease review Markus Armbruster
2015-09-03 16:19   ` Daniel P. Berrange
2015-09-03 14:29 ` [Qemu-devel] [PATCH RFC v4 07/32] qapi: Generate comments to simplify splitting for review Markus Armbruster
2015-09-03 16:21   ` Daniel P. Berrange
2015-09-03 14:29 ` [Qemu-devel] [PATCH RFC v4 08/32] Revert "qapi: Generate comments to simplify splitting for review" Markus Armbruster
2015-09-03 14:30 ` [Qemu-devel] [PATCH RFC v4 09/32] Revert "qapi: Split up some typedefs to ease review" Markus Armbruster
2015-09-03 14:30 ` [Qemu-devel] [PATCH RFC v4 10/32] qapi-types: Convert to QAPISchemaVisitor, fixing flat unions Markus Armbruster
2015-09-04  3:11   ` Eric Blake
2015-09-03 14:30 ` [Qemu-devel] [PATCH RFC v4 11/32] qapi-visit: Convert to QAPISchemaVisitor, fixing bugs Markus Armbruster
2015-09-04  3:14   ` Eric Blake
2015-09-03 14:30 ` [Qemu-devel] [PATCH RFC v4 12/32] qapi-commands: Convert to QAPISchemaVisitor Markus Armbruster
2015-09-03 14:30 ` [Qemu-devel] [PATCH RFC v4 13/32] qapi: De-duplicate enum code generation Markus Armbruster
2015-09-03 14:30 ` [Qemu-devel] [PATCH RFC v4 14/32] qapi-event: Eliminate global variable event_enum_value Markus Armbruster
2015-09-03 14:30 ` [Qemu-devel] [PATCH RFC v4 15/32] qapi-event: Convert to QAPISchemaVisitor, fixing data with base Markus Armbruster
2015-09-03 14:30 ` [Qemu-devel] [PATCH RFC v4 16/32] qapi: Generate comments to simplify splitting for review Markus Armbruster
2015-09-03 14:30 ` [Qemu-devel] [PATCH RFC v4 17/32] Revert "qapi: Generate comments to simplify splitting for review" Markus Armbruster
2015-09-03 14:30 ` [Qemu-devel] [PATCH RFC v4 18/32] qapi: Replace dirty is_c_ptr() by method c_null() Markus Armbruster
2015-09-03 14:30 ` [Qemu-devel] [PATCH RFC v4 19/32] qapi: Clean up after recent conversions to QAPISchemaVisitor Markus Armbruster
2015-09-03 14:30 ` [Qemu-devel] [PATCH RFC v4 20/32] qapi-visit: Rearrange code a bit Markus Armbruster
2015-09-03 14:30 ` [Qemu-devel] [PATCH RFC v4 21/32] qapi-commands: Rearrange code Markus Armbruster
2015-09-03 14:30 ` [Qemu-devel] [PATCH RFC v4 22/32] qapi: Rename qmp_marshal_input_FOO() to qmp_marshal_FOO() Markus Armbruster
2015-09-03 14:30 ` [Qemu-devel] [PATCH RFC v4 23/32] qapi: De-duplicate parameter list generation Markus Armbruster
2015-09-03 14:30 ` [Qemu-devel] [PATCH RFC v4 24/32] qapi-commands: De-duplicate output marshaling functions Markus Armbruster
2015-09-03 14:30 ` [Qemu-devel] [PATCH RFC v4 25/32] qapi: Improve built-in type documentation Markus Armbruster
2015-09-03 14:30 ` [Qemu-devel] [PATCH RFC v4 26/32] qapi: Introduce a first class 'any' type Markus Armbruster
2015-09-03 14:30 ` [Qemu-devel] [PATCH RFC v4 27/32] qom: Don't use 'gen': false for qom-get, qom-set, object-add Markus Armbruster
2015-09-03 14:30 ` [Qemu-devel] [PATCH RFC v4 28/32] qapi-schema: Fix up misleading specification of netdev_add Markus Armbruster
2015-09-03 14:30 ` [Qemu-devel] [PATCH RFC v4 29/32] qapi: Pseudo-type '**' is now unused, drop it Markus Armbruster
2015-09-03 20:42   ` Eric Blake
2015-09-04  7:14     ` Markus Armbruster
2015-09-03 14:30 ` [Qemu-devel] [PATCH RFC v4 30/32] qapi: New QMP command query-schema for QMP schema introspection Markus Armbruster
2015-09-03 20:50   ` Eric Blake
2015-09-04  0:04     ` Michael Roth
2015-09-04  7:19       ` Markus Armbruster
2015-09-03 23:59   ` Michael Roth
2015-09-04  8:54     ` Markus Armbruster
2015-09-04  2:03   ` Eric Blake
2015-09-04  3:12     ` Eric Blake [this message]
2015-09-04  9:55     ` Markus Armbruster
2015-09-04 13:58       ` Eric Blake
2015-09-04 15:08         ` Markus Armbruster
2015-09-03 14:30 ` [Qemu-devel] [PATCH RFC v4 31/32] qapi-introspect: Map all integer types to 'int' Markus Armbruster
2015-09-04 14:00   ` Eric Blake
2015-09-03 14:30 ` [Qemu-devel] [PATCH RFC v4 32/32] qapi-introspect: Hide type names Markus Armbruster
2015-09-04 14:07   ` Eric Blake
2015-09-04 15:52     ` Markus Armbruster
2015-09-04 12:57 ` [Qemu-devel] [PATCH RFC v4 00/32] qapi: QMP introspection Marc-André Lureau
2015-09-04 14:14   ` Eric Blake
2015-09-04 15:55   ` Markus Armbruster

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=55E90C1C.9050802@redhat.com \
    --to=eblake@redhat.com \
    --cc=armbru@redhat.com \
    --cc=mdroth@linux.vnet.ibm.com \
    --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 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.