From: John Snow <jsnow@redhat.com>
To: Markus Armbruster <armbru@redhat.com>
Cc: "Marc-André Lureau" <marcandre.lureau@redhat.com>,
"Victor Toso de Carvalho" <victortoso@redhat.com>,
"Andrea Bolognani" <abologna@redhat.com>,
qemu-devel <qemu-devel@nongnu.org>
Subject: Re: Notes on Generating Python signatures for QMP RPCs
Date: Thu, 3 Feb 2022 16:14:28 -0500 [thread overview]
Message-ID: <CAFn=p-YiXcYkdHwqRCvQDKP3vYwv5u4CFnxMCcBGnzSyNF9zVw@mail.gmail.com> (raw)
In-Reply-To: <874k5g4687.fsf@pond.sub.org>
On Thu, Feb 3, 2022 at 5:04 AM Markus Armbruster <armbru@redhat.com> wrote:
> John Snow <jsnow@redhat.com> writes:
> > On Thu, Jan 27, 2022 at 9:03 AM Markus Armbruster <armbru@redhat.com> wrote:
> >> John Snow <jsnow@redhat.com> writes:
> >> > (7) I have no idea what to do about functions that "may not return".
> >> > The QGA stuff in particular, I believe, is prone to some weirdness
> >> > that violates the core principles of the QMP spec.
> >>
> >> Yes.
> >>
> >> docs/interop/qmp-spec.txt dictates a command sends either a success or
> >> an error response. Makes sense.
> >>
> >> QGA has a few commands that shut down the guest. How could such a
> >> command send a success response? If it sends it before it initiates
> >> shutdown, response transmission races with shutdown. The easy way out
> >> is violating qmp-spec.txt. Thus, 'success-response': false. Just for
> >> QGA.
> >>
> >
> > Oh, whoops, I already have the information we need. O:-)
> > (Assuming that 'success-response' is visible in the introspection data, anyway.
>
> qapi/introspect.json:
>
> ##
> # @SchemaInfoCommand:
> [...]
> # TODO: @success-response (currently irrelevant, because it's QGA, not QMP)
> #
> # Since: 2.5
> ##
> { 'struct': 'SchemaInfoCommand',
> 'data': { 'arg-type': 'str', 'ret-type': 'str',
> '*allow-oob': 'bool' } }
>
> The TODO neglects to spell out "and QGA doesn't support introspection so
> far".
>
Oof, ouch, my bones.
What will it take to add introspection to QGA? (Is this GSoC/Outreachy
appropriate?)
(This is not critically important to me, just a backburner thought.)
--js
next prev parent reply other threads:[~2022-02-03 21:57 UTC|newest]
Thread overview: 11+ messages / expand[flat|nested] mbox.gz Atom feed top
2022-01-26 18:58 Notes on Generating Python signatures for QMP RPCs John Snow
2022-01-27 14:03 ` Markus Armbruster
2022-02-03 1:54 ` John Snow
2022-02-03 10:03 ` Markus Armbruster
2022-02-03 21:14 ` John Snow [this message]
2022-02-04 6:53 ` Markus Armbruster
2022-02-03 10:39 ` Daniel P. Berrangé
2022-02-03 22:52 ` John Snow
2022-02-04 7:23 ` Markus Armbruster
2022-02-04 9:21 ` Daniel P. Berrangé
2022-02-07 10:11 ` 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='CAFn=p-YiXcYkdHwqRCvQDKP3vYwv5u4CFnxMCcBGnzSyNF9zVw@mail.gmail.com' \
--to=jsnow@redhat.com \
--cc=abologna@redhat.com \
--cc=armbru@redhat.com \
--cc=marcandre.lureau@redhat.com \
--cc=qemu-devel@nongnu.org \
--cc=victortoso@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).