qemu-devel.nongnu.org archive mirror
 help / color / mirror / Atom feed
From: "Michael S. Tsirkin" <mst@redhat.com>
To: Markus Armbruster <armbru@redhat.com>
Cc: aliguori@us.ibm.com, avi@redhat.com, qemu-devel@nongnu.org,
	Luiz Capitulino <lcapitulino@redhat.com>
Subject: [Qemu-devel] Re: ANN: QEMU Monitor Protocol git tree
Date: Wed, 11 Nov 2009 12:03:25 +0200	[thread overview]
Message-ID: <20091111100325.GB3387@redhat.com> (raw)
In-Reply-To: <87r5twqxo7.fsf@pike.pond.sub.org>

On Thu, Sep 24, 2009 at 03:28:40PM +0200, Markus Armbruster wrote:
> Luiz Capitulino <lcapitulino@redhat.com> writes:
> 
> > On Thu, 24 Sep 2009 00:37:53 +0200
> > Markus Armbruster <armbru@redhat.com> wrote:
> >
> >> Luiz Capitulino <lcapitulino@redhat.com> writes:
> >> 
> >> [...]
> >> > 2.2 Server Greeting
> >> > -------------------
> >> >
> >> > Right when connected the Server will issue a greeting message, which signals
> >> > that the connection has been successfully established and that the Server is
> >> > waiting for commands.
> >> >
> >> > The format is:
> >> >
> >> > { "QEMU": json-string, "QMP": json-string, "capabilities": json-array }
> >> >
> >> >  Where,
> >> >
> >> > - The "QEMU" member contains the QEMU version
> >> > - The "QMP" member contains the QMP version
> >> > - The "capabilities" member specify the availability of features beyond the
> >> >   baseline specification
> >> 
> >> What about capability negotiation?  Server offers capabilities, client
> >> can accept or decline them.
> >> 
> >> [...]
> >
> >  I think the easiest way to have this would be to add a
> > monitor command to disable capabilities. Like a command to
> > disable async messages.
> 
> Greeting capabilities (for lack of a better word) are for the protocol.
> Changing protocol capabilities while you use the protocol is awkward.
> Better do it in an initial handshake.

If we use this to supppress/enable messages, I think
it's clear we need to support changing them on the fly.

> Case in point: if you disable asynchronous messages with a command, you
> still have to be prepared to receive one between initial handshake and
> completion of the disable command.  If I have to ignore them anyway, why
> bother with disabling them?

For debug messages, sending and discarding them might have
performance impact.

> The problem becomes more serious if we ever want to add a capability
> that isn't fully backward compatible.  Lack of feature negotiation
> limits protocol evolvability.

Some kind of version is the usualy way to do this.

-- 
MST

  parent reply	other threads:[~2009-11-11 10:06 UTC|newest]

Thread overview: 33+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2009-09-22  1:44 [Qemu-devel] ANN: QEMU Monitor Protocol git tree Luiz Capitulino
2009-09-23  1:56 ` Anthony Liguori
2009-09-23  9:57   ` Daniel P. Berrange
2009-09-23 10:57     ` Avi Kivity
2009-09-23 13:40       ` [Qemu-devel] " Paolo Bonzini
2009-09-23 14:04         ` Avi Kivity
2009-09-23 15:19           ` Nathan Baum
2009-09-23 15:40             ` Luiz Capitulino
2009-09-23 18:15           ` Anthony Liguori
2009-09-23 18:36             ` Jamie Lokier
2009-09-23 18:45               ` Paolo Bonzini
2009-09-23 16:01     ` [Qemu-devel] " Markus Armbruster
2009-09-23 16:11       ` Luiz Capitulino
2009-09-23 18:15         ` Jamie Lokier
2009-09-23 18:18       ` Anthony Liguori
2009-09-23 17:08     ` Daniel P. Berrange
2009-09-23 19:07       ` Luiz Capitulino
2009-09-23 14:18   ` Luiz Capitulino
2009-09-23 18:21     ` Anthony Liguori
2009-09-23 10:08 ` Daniel P. Berrange
2009-09-23 14:21   ` Luiz Capitulino
2009-09-23 15:55   ` Markus Armbruster
2009-09-23 22:37 ` Markus Armbruster
2009-09-24 12:31   ` Luiz Capitulino
2009-09-24 12:44     ` Avi Kivity
2009-09-24 13:05       ` Luiz Capitulino
2009-09-24 13:07         ` Avi Kivity
2009-09-24 13:14           ` Luiz Capitulino
2009-11-11  9:59             ` [Qemu-devel] " Michael S. Tsirkin
2009-09-24 13:28     ` [Qemu-devel] " Markus Armbruster
2009-09-24 19:09       ` Luiz Capitulino
2009-11-11 10:03       ` Michael S. Tsirkin [this message]
2009-11-13  8:38         ` [Qemu-devel] " 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=20091111100325.GB3387@redhat.com \
    --to=mst@redhat.com \
    --cc=aliguori@us.ibm.com \
    --cc=armbru@redhat.com \
    --cc=avi@redhat.com \
    --cc=lcapitulino@redhat.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 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).