[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-devel] Re: [PATCH v3 2/3] qerror: Add a new MACHINE_STOPPED er
From: |
Daniel P. Berrange |
Subject: |
Re: [Qemu-devel] Re: [PATCH v3 2/3] qerror: Add a new MACHINE_STOPPED error message |
Date: |
Fri, 27 Aug 2010 16:33:07 +0100 |
User-agent: |
Mutt/1.4.1i |
On Fri, Aug 27, 2010 at 09:59:55AM -0500, Anthony Liguori wrote:
> 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);
IMHO this is flawed because it does not allow you to fetch the
balloon stats independantly of asking the guest OS to refresh
them. So if the guest dies, it is not possible to ask QEMU
what the last known stats were.
Although the current guest driver implementation requires the
host to request an update before the guest will refresh stats,
in theory someone could provide a guest driver impl thta does
a periodic push to the host without requiring a request.
Thus for a fully generalized access mechanism you need two
APIs and one event
- API to request guest balloon stats update
- API to get current known balloon stats
- Event to notify client of a balloon stats update
And for the non-stats related balloon level we need
- Event to notify client of balloon level change
Even if the API to request a guest balloon stats update is fully async
and cancellable, you still need the event to notify client of the
balloon stats update, because in a multiple monitor scenario the
client wanting notification may be different to the client requesting
the refresh.
Regards,
Daniel
--
|: Red Hat, Engineering, London -o- http://people.redhat.com/berrange/ :|
|: http://libvirt.org -o- http://virt-manager.org -o- http://deltacloud.org :|
|: http://autobuild.org -o- http://search.cpan.org/~danberr/ :|
|: GnuPG: 7D3B9505 -o- F3C9 553F A1DA 4AC2 5648 23C1 B3DF F742 7D3B 9505 :|
- [Qemu-devel] [PATCH v3 0/3] virtio-balloon: Don't wait indefinitely for guest response, Amit Shah, 2010/08/27
- [Qemu-devel] [PATCH v3 1/3] balloon: Don't try fetching info if guest is unresponsive, Amit Shah, 2010/08/27
- [Qemu-devel] [PATCH v3 2/3] qerror: Add a new MACHINE_STOPPED error message, Amit Shah, 2010/08/27
- [Qemu-devel] Re: [PATCH v3 2/3] qerror: Add a new MACHINE_STOPPED error message, Daniel P. Berrange, 2010/08/27
- [Qemu-devel] Re: [PATCH v3 2/3] qerror: Add a new MACHINE_STOPPED error message, Anthony Liguori, 2010/08/27
- [Qemu-devel] Re: [PATCH v3 2/3] qerror: Add a new MACHINE_STOPPED error message, Daniel P. Berrange, 2010/08/27
- Re: [Qemu-devel] Re: [PATCH v3 2/3] qerror: Add a new MACHINE_STOPPED error message, Markus Armbruster, 2010/08/27
- Re: [Qemu-devel] Re: [PATCH v3 2/3] qerror: Add a new MACHINE_STOPPED error message, Luiz Capitulino, 2010/08/27
- Re: [Qemu-devel] Re: [PATCH v3 2/3] qerror: Add a new MACHINE_STOPPED error message, Anthony Liguori, 2010/08/27
- Re: [Qemu-devel] Re: [PATCH v3 2/3] qerror: Add a new MACHINE_STOPPED error message,
Daniel P. Berrange <=
- Re: [Qemu-devel] Re: [PATCH v3 2/3] qerror: Add a new MACHINE_STOPPED error message, Anthony Liguori, 2010/08/27
- Re: [Qemu-devel] Re: [PATCH v3 2/3] qerror: Add a new MACHINE_STOPPED error message, Luiz Capitulino, 2010/08/27
- Re: [Qemu-devel] Re: [PATCH v3 2/3] qerror: Add a new MACHINE_STOPPED error message, Anthony Liguori, 2010/08/27
- Re: [Qemu-devel] Re: [PATCH v3 2/3] qerror: Add a new MACHINE_STOPPED error message, Luiz Capitulino, 2010/08/27
- Re: [Qemu-devel] Re: [PATCH v3 2/3] qerror: Add a new MACHINE_STOPPED error message, Anthony Liguori, 2010/08/27
- Re: [Qemu-devel] Re: [PATCH v3 2/3] qerror: Add a new MACHINE_STOPPED error message, Luiz Capitulino, 2010/08/27
- Should QMP be RPC to internal C interfaces? (was: [Qemu-devel] Re: [PATCH v3 2/3] qerror: Add a new MACHINE_STOPPED error message), Markus Armbruster, 2010/08/30
- [Qemu-devel] Re: Should QMP be RPC to internal C interfaces?, Anthony Liguori, 2010/08/30
- [Qemu-devel] Re: Should QMP be RPC to internal C interfaces?, Anthony Liguori, 2010/08/30
- [Qemu-devel] Re: Should QMP be RPC to internal C interfaces?, Luiz Capitulino, 2010/08/30