qemuMonitorBlockStatsUpdateCapacity: Remove 'backingChain' argument

Always fetch the stats for all backing chain members. Callers from
qemu_driver.c already always passed 'true' and the caller from the
migration code won't mind when we fetch all stats.

Signed-off-by: Peter Krempa <pkrempa@redhat.com>
Reviewed-by: Michal Privoznik <mprivozn@redhat.com>
This commit is contained in:
Peter Krempa 2021-10-19 15:57:25 +02:00
parent 5f5631707f
commit ab8d520eb5
6 changed files with 12 additions and 24 deletions

View File

@ -10057,7 +10057,7 @@ qemuDomainBlocksStatsGather(virQEMUDriver *driver,
if (blockdev) if (blockdev)
rc = qemuMonitorBlockStatsUpdateCapacityBlockdev(priv->mon, blockstats); rc = qemuMonitorBlockStatsUpdateCapacityBlockdev(priv->mon, blockstats);
else else
rc = qemuMonitorBlockStatsUpdateCapacity(priv->mon, blockstats, true); rc = qemuMonitorBlockStatsUpdateCapacity(priv->mon, blockstats);
} }
if (qemuDomainObjExitMonitor(driver, vm) < 0 || nstats < 0 || rc < 0) if (qemuDomainObjExitMonitor(driver, vm) < 0 || nstats < 0 || rc < 0)
@ -18483,8 +18483,7 @@ qemuDomainGetStatsBlock(virQEMUDriver *driver,
if (blockdev) if (blockdev)
rc = qemuMonitorBlockStatsUpdateCapacityBlockdev(priv->mon, stats); rc = qemuMonitorBlockStatsUpdateCapacityBlockdev(priv->mon, stats);
else else
ignore_value(qemuMonitorBlockStatsUpdateCapacity(priv->mon, stats, ignore_value(qemuMonitorBlockStatsUpdateCapacity(priv->mon, stats));
true));
} }
if (fetchnodedata) if (fetchnodedata)

View File

@ -495,7 +495,7 @@ qemuMigrationCookieAddNBD(qemuMigrationCookie *mig,
if (blockdev) if (blockdev)
rc = qemuMonitorBlockStatsUpdateCapacityBlockdev(priv->mon, stats); rc = qemuMonitorBlockStatsUpdateCapacityBlockdev(priv->mon, stats);
else else
rc = qemuMonitorBlockStatsUpdateCapacity(priv->mon, stats, false); rc = qemuMonitorBlockStatsUpdateCapacity(priv->mon, stats);
if (qemuDomainObjExitMonitor(driver, vm) < 0 || rc < 0) if (qemuDomainObjExitMonitor(driver, vm) < 0 || rc < 0)
return -1; return -1;

View File

@ -2084,14 +2084,11 @@ qemuMonitorGetAllBlockStatsInfo(qemuMonitor *mon,
/* Updates "stats" to fill virtual and physical size of the image */ /* Updates "stats" to fill virtual and physical size of the image */
int int
qemuMonitorBlockStatsUpdateCapacity(qemuMonitor *mon, qemuMonitorBlockStatsUpdateCapacity(qemuMonitor *mon,
GHashTable *stats, GHashTable *stats)
bool backingChain)
{ {
VIR_DEBUG("stats=%p, backing=%d", stats, backingChain);
QEMU_CHECK_MONITOR(mon); QEMU_CHECK_MONITOR(mon);
return qemuMonitorJSONBlockStatsUpdateCapacity(mon, stats, backingChain); return qemuMonitorJSONBlockStatsUpdateCapacity(mon, stats);
} }

View File

@ -742,8 +742,7 @@ int qemuMonitorGetAllBlockStatsInfo(qemuMonitor *mon,
ATTRIBUTE_NONNULL(2); ATTRIBUTE_NONNULL(2);
int qemuMonitorBlockStatsUpdateCapacity(qemuMonitor *mon, int qemuMonitorBlockStatsUpdateCapacity(qemuMonitor *mon,
GHashTable *stats, GHashTable *stats)
bool backingChain)
ATTRIBUTE_NONNULL(2); ATTRIBUTE_NONNULL(2);
int qemuMonitorBlockStatsUpdateCapacityBlockdev(qemuMonitor *mon, int qemuMonitorBlockStatsUpdateCapacityBlockdev(qemuMonitor *mon,

View File

@ -2617,8 +2617,7 @@ static int
qemuMonitorJSONBlockStatsUpdateCapacityOne(virJSONValue *image, qemuMonitorJSONBlockStatsUpdateCapacityOne(virJSONValue *image,
const char *dev_name, const char *dev_name,
int depth, int depth,
GHashTable *stats, GHashTable *stats)
bool backingChain)
{ {
g_autofree char *entry_name = qemuDomainStorageAlias(dev_name, depth); g_autofree char *entry_name = qemuDomainStorageAlias(dev_name, depth);
virJSONValue *backing; virJSONValue *backing;
@ -2627,13 +2626,11 @@ qemuMonitorJSONBlockStatsUpdateCapacityOne(virJSONValue *image,
stats, NULL) < 0) stats, NULL) < 0)
return -1; return -1;
if (backingChain && if ((backing = virJSONValueObjectGetObject(image, "backing-image")) &&
(backing = virJSONValueObjectGetObject(image, "backing-image")) &&
qemuMonitorJSONBlockStatsUpdateCapacityOne(backing, qemuMonitorJSONBlockStatsUpdateCapacityOne(backing,
dev_name, dev_name,
depth + 1, depth + 1,
stats, stats) < 0)
true) < 0)
return -1; return -1;
return 0; return 0;
@ -2642,8 +2639,7 @@ qemuMonitorJSONBlockStatsUpdateCapacityOne(virJSONValue *image,
int int
qemuMonitorJSONBlockStatsUpdateCapacity(qemuMonitor *mon, qemuMonitorJSONBlockStatsUpdateCapacity(qemuMonitor *mon,
GHashTable *stats, GHashTable *stats)
bool backingChain)
{ {
size_t i; size_t i;
g_autoptr(virJSONValue) devices = NULL; g_autoptr(virJSONValue) devices = NULL;
@ -2668,9 +2664,7 @@ qemuMonitorJSONBlockStatsUpdateCapacity(qemuMonitor *mon,
!(image = virJSONValueObjectGetObject(inserted, "image"))) !(image = virJSONValueObjectGetObject(inserted, "image")))
continue; continue;
if (qemuMonitorJSONBlockStatsUpdateCapacityOne(image, dev_name, 0, if (qemuMonitorJSONBlockStatsUpdateCapacityOne(image, dev_name, 0, stats) < 0)
stats,
backingChain) < 0)
return -1; return -1;
} }

View File

@ -79,8 +79,7 @@ virJSONValue *qemuMonitorJSONQueryBlockstats(qemuMonitor *mon);
int qemuMonitorJSONGetAllBlockStatsInfo(qemuMonitor *mon, int qemuMonitorJSONGetAllBlockStatsInfo(qemuMonitor *mon,
GHashTable *hash); GHashTable *hash);
int qemuMonitorJSONBlockStatsUpdateCapacity(qemuMonitor *mon, int qemuMonitorJSONBlockStatsUpdateCapacity(qemuMonitor *mon,
GHashTable *stats, GHashTable *stats);
bool backingChain);
int qemuMonitorJSONBlockStatsUpdateCapacityBlockdev(qemuMonitor *mon, int qemuMonitorJSONBlockStatsUpdateCapacityBlockdev(qemuMonitor *mon,
GHashTable *stats); GHashTable *stats);