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.

Regards,

Anthony Liguori


Reply via email to