[libvirt] [PATCH v2 00/10] Re-enable memballoon driver statistics reporting
Michal Privoznik
mprivozn at redhat.com
Thu Jul 11 14:05:47 UTC 2013
On 08.07.2013 21:20, John Ferlan wrote:
> This patchset replaces:
>
> https://www.redhat.com/archives/libvir-list/2013-July/msg00108.html
>
> Changes since V1:
> * Remove the external (eg, qemu_monitor.{c,h}) API's to the qom-list,
> qom-get, qom-set interfaces
> * Handle errors in virXPathInt() return checking domain_conf.c
> * Move the 'period' from _qemuDomainObjPrivate into _qemuMonitor
> * Move/rename qemuProcessFindBalloonObjectPath from qemu_process.c
> into qemu_monitor.c as qemuMonitorFindBalloonObjectPath()
> * Create qemuMonitorJSONSetMemoryStatsPeriod() in qemu_monitor_json.c from
> parts of prior change to add qemuProcessUpdateBalloonStatsPeriod()
> in qemu_process.c and hav
> * Add qemuMonitorSetMemoryStatsPeriod() in qemu_monitor.c to set
> the collection period. Adjust the code to take parts of prior change
> and make check for balloon path in this path (set if necessary).
> * Adjust code in qemuProcessReconnect(), qemuProcessStart(), and
> qemuProcessAttach() to call qemuMonitorSetMemoryStatsPeriod()
> * Adjust qemuMonitorJSONGetMemoryStats() to get the balloon stats once
> the "actual" stat is collected from qemuMonitorJSONGetBalloonInfo().
> Reviewer note: The prior code to get "actual" was a duplicate of the
> BalloonInfo code. Since "balloon-info" is where the actual memory is
> still stored it still must be called as that data is not present in
> the balloon stats qom-get "stats" fetch implemented as the new API
> qemuMonitorJSONGetBalloonStats().
> * Avoid overloading virDomainSetMemoryFlags()...
> * Create/use virDomainSetMemoryStatsPeriodFlags() to set the collection
> period dynamically from "virsh dommemstats" using the --period qualifier.
>
> John Ferlan (10):
> Add qemuMonitorJSONGetObjectListPaths() method for QMP qom-list
> command
> Add qemuMonitorJSONGetObjectProperty() method for QMP qom-get command
> Add qemuMonitorJSONSetObjectProperty() method for QMP qom-set command
> Add 'period' for Memballoon statistics gathering capability
> Determine whether to start balloon memory stats gathering.
> Add capability to fetch balloon stats
> Add new public API virDomainSetMemoryStatsPeriodFlags
> Specify remote protocol for virDomainSetMemoryStatsPeriodFlags
> Implement the virDomainSetMemoryStatsPeriodFlags for QEMU driver
> Allow balloon driver collection to be adjusted dynamically
>
> docs/formatdomain.html.in | 19 ++
> docs/schemas/domaincommon.rng | 7 +
> include/libvirt/libvirt.h.in | 3 +
> src/conf/domain_conf.c | 44 +++-
> src/conf/domain_conf.h | 1 +
> src/driver.h | 6 +
> src/libvirt.c | 65 ++++++
> src/libvirt_public.syms | 5 +
> src/qemu/qemu_driver.c | 66 ++++++
> src/qemu/qemu_monitor.c | 133 ++++++++++-
> src/qemu/qemu_monitor.h | 2 +
> src/qemu/qemu_monitor_json.c | 498 ++++++++++++++++++++++++++++++++----------
> src/qemu/qemu_monitor_json.h | 64 ++++++
> src/qemu/qemu_process.c | 21 +-
> src/remote/remote_driver.c | 1 +
> src/remote/remote_protocol.x | 15 +-
> src/remote_protocol-structs | 6 +
> tests/qemumonitorjsontest.c | 186 ++++++++++++++++
> tools/virsh-domain-monitor.c | 66 +++++-
> 19 files changed, 1085 insertions(+), 123 deletions(-)
>
ACK series modulo patch 05/10 where three questions need to be answered
first:
- Why do we call qemuMonitorSetMemoryStatsPeriod in qemuProcessReconnect?
- Why do we try to gather polling interval prior setting it?
- I guess we should error out there as well.
Michal
More information about the libvir-list
mailing list