On 08/27/2010 09:15 AM, Luiz Capitulino wrote:

I wondered if we could drop it for now to make it right in 0.14, but I
believe it's already part of the user monitor for some time and libvirt
uses the stats, right?

I think we need testing/unstable namespace in QMP, where commands can be
tested for while so that we reduce the risk of nasty surprises like this one.

It's trying to plug a sieve with a band-aid. It's certainly an "improvement" but it's of question utility looking at the bigger picture.

Balloon is a perfect example of where what we really need to do is build interface interfaces that make sense, and then expose them in QMP.

What's a reasonable C-level API to query statistics that potentially may never return? Building in a timeout is something of a crappy API because it puts policy deep in the API that is trivial to implement elsewhere. What you'd probably do is something like:

BalloonStatsRequest *query_guest_balloon_stats(CompletionCallback *cb, void *opaque);
int cancel_guest_balloon_stats(BalloonStatsRequest *req);
void release_guest_balloon_stats(BalloonStatsRequest *req);

Regards,

Anthony Liguori

Beyond fixing that regression, I agree that this command is terminally
flawed&  we need to deprecate it&  provide better specified new
replacement(s). This seems like 0.14 work to me though.
Yup.

Regards,
Daniel

[1] I know that they could already suffer if there was a bug in qemu
     that prevented it responding, even if the guest was not being
     malicious/crashed.


Reply via email to