[libvirt] [PATCH 00/22] qemu: Clean up typed parameter handling in bulk stats

Peter Krempa pkrempa at redhat.com
Thu Sep 19 17:13:03 UTC 2019


While investigating whether block bulk stats work properly with blockdev
I got irritated by macros hiding gotos.

Refactor the stats tracking by introducing few new typed parameter
handlers.

Peter Krempa (22):
  util: typedparam: Split out public APIs into a separate file
  util: typedparam: Purge public bits from virTypedParamsGetStringList
  util: typedparam: Move and unexport virTypedParameterAssignFromStr
  util: typedparam: Remove pointless cleanup label from
    virTypedParameterAssignFromStr
  docs: apibuild: Purge irrelevant typed parameter APIs from ignore
  util: typedparam: Separate code to assign value to typed parameter
  util: typedparam: Optionally copy strings passed to
    virTypedParameterAssignValue
  util: typedparam: Simplify handling of lists of typed parameters
  qemu: Remove stale comment for qemuDomainBlockStats
  qemu: monitor: Refactor cleanup in
    qemuMonitorJSONBlockStatsCollectData
  qemu: monitor: Refactor cleanup in qemuMonitorJSONGetOneBlockStatsInfo
  qemu: monitor: Refactor cleanup in qemuMonitorJSONGetAllBlockStatsInfo
  qemu: monitor: Change fields in qemuBlockStats to 'unsigned'
  qemu: driver: Remove pointless macro QEMU_BLOCK_STAT_TOTAL
  qemu: driver: Don't return anything from
    qemuDomainBlockStatsGatherTotals
  qemu: driver: Remove QEMU_ADD_BLOCK_PARAM_LL macro
  qemu: Use virTypedParamList in the bulk stats gathering functions
  qemu: driver: Stop using QEMU_ADD_BLOCK_PARAM_ULL in
    qemuDomainGetStatsOneBlockFallback
  qemu: driver: Stop using QEMU_ADD_BLOCK_PARAM_ULL in
    qemuDomainGetStatsOneBlock
  qemu: driver: Stop using QEMU_ADD_BLOCK_PARAM_ULL in
    qemuDomainGetStatsBlockExportBackendStorage
  qemu: driver: Stop using QEMU_ADD_BLOCK_PARAM_ULL in
    qemuDomainGetStatsBlockExportFrontend
  qemu: driver: Remove unused cleanup labels in stats gathering
    functions

 docs/Makefile.am                |    2 +-
 docs/apibuild.py                |    7 +-
 src/libvirt_private.syms        |   10 +-
 src/qemu/qemu_driver.c          |  635 ++++++-----------
 src/qemu/qemu_monitor.h         |   16 +-
 src/qemu/qemu_monitor_json.c    |   57 +-
 src/util/Makefile.inc.am        |    1 +
 src/util/virtypedparam-public.c |  886 ++++++++++++++++++++++++
 src/util/virtypedparam.c        | 1129 +++++++------------------------
 src/util/virtypedparam.h        |   67 +-
 10 files changed, 1440 insertions(+), 1370 deletions(-)
 create mode 100644 src/util/virtypedparam-public.c

-- 
2.21.0




More information about the libvir-list mailing list