From: Jamie Lokier <jamie@shareable.org>
To: Anthony Liguori <anthony@codemonkey.ws>
Cc: qemu-devel <qemu-devel@nongnu.org>, Adam Litke <agl@us.ibm.com>,
Avi Kivity <avi@redhat.com>,
Luiz Capitulino <lcapitulino@redhat.com>
Subject: Re: [Qemu-devel] Re: [RFD] virtio: Add memory statistics reporting to the balloon driver
Date: Fri, 8 Jan 2010 01:33:59 +0000 [thread overview]
Message-ID: <20100108013359.GC5011@shareable.org> (raw)
In-Reply-To: <4B45FC3A.6000900@codemonkey.ws>
Anthony Liguori wrote:
> On 01/07/2010 09:18 AM, Avi Kivity wrote:
> >On 01/07/2010 05:12 PM, Anthony Liguori wrote:
> >>
> >>3) Make qemu request balloon stats regularly (maybe every 10 seconds)
> >>and display the latest stats with info balloon. This avoids the
> >>problem in #2 but it means that qemu determines the poll rate instead
> >>of a management tool.
> >>
> >>4) Make info-balloon a proper asynchronous command. We need new
> >>infrastructure to allow a qmp handler to take a callback that can be
> >>used to delay the completion of the command. This addresses all of
> >>the above problems but it introduces a new one. Command completion
> >>now depends on the guest. This potentially could trip up a naive
> >>management tool that doesn't realize that the info-balloon command
> >>may never complete.
> >>
> >>I'm on the fence between 3 and 4 myself.
> >>
> >
> >Can I tip you over to #4? #3 means we have no idea when the stats
> >were generated. With #4, we can't be sure, but it usually be close to
> >when the command returns.
> >
> >The command should include a timeout so a broken guest won't hang a
> >management tool thread.
>
> Generally, timeouts are evil but if we did something like, wait 10
> seconds and if we don't hear a response from the guest, return the last
> data set, I think I would be okay with that. It means we may be
> reporting stale data, but at the same time, the data is coming from a
> guest so it can't be considered authoritative anyway.
A flag in the response to say if it's fresh or stale would be good -
or simply a timestamp in host time.
The timeout does not need to be as long as 10 seconds. If the guest
is so slow to respond, management can poll at whatever rate it wants
until it gets a fresh response. For this a timestamp is better,
because it may be happy with a response that is sufficiently recent
but not due to the most recent request.
-- Jamie
next prev parent reply other threads:[~2010-01-08 1:34 UTC|newest]
Thread overview: 16+ messages / expand[flat|nested] mbox.gz Atom feed top
2010-01-05 17:08 [Qemu-devel] [RFD] virtio: Add memory statistics reporting to the balloon driver Adam Litke
2010-01-07 15:12 ` [Qemu-devel] " Anthony Liguori
2010-01-07 15:18 ` Avi Kivity
2010-01-07 15:22 ` Anthony Liguori
2010-01-07 15:39 ` Adam Litke
2010-01-08 1:33 ` Jamie Lokier [this message]
2010-01-07 15:49 ` Daniel P. Berrange
2010-01-07 16:27 ` Adam Litke
2010-01-07 16:39 ` Avi Kivity
2010-01-07 16:56 ` Anthony Liguori
2010-01-07 17:58 ` Luiz Capitulino
2010-01-07 18:30 ` Luiz Capitulino
2010-01-08 16:31 ` Anthony Liguori
2010-01-08 16:51 ` Luiz Capitulino
2010-01-08 17:01 ` Adam Litke
2010-01-08 17:25 ` Luiz Capitulino
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=20100108013359.GC5011@shareable.org \
--to=jamie@shareable.org \
--cc=agl@us.ibm.com \
--cc=anthony@codemonkey.ws \
--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).