From 5485e7e83280c4ec8b94cfae943ab2337e505e6b Mon Sep 17 00:00:00 2001 From: Peter Krempa Date: Wed, 1 Oct 2025 14:36:12 +0200 Subject: [PATCH] qemuMigrationCookieAddNBD: Use qemuBlockGetNamedNodeData to fetch the capacities 'qemuMonitorBlockStatsUpdateCapacityBlockdev' uses the same command internally. Upcoming patches will want to merge qemuMonitorBlockStatsUpdateCapacityBlockdev into qemuMonitorGetAllBlockStatsInfo and qemuMigrationCookieAddNBD is the only place that doesn't call qemuMonitorGetAllBlockStatsInfo. Signed-off-by: Peter Krempa Reviewed-by: Michal Privoznik --- src/qemu/qemu_migration_cookie.c | 17 +++++------------ 1 file changed, 5 insertions(+), 12 deletions(-) diff --git a/src/qemu/qemu_migration_cookie.c b/src/qemu/qemu_migration_cookie.c index 01529c99b8..7311a8294b 100644 --- a/src/qemu/qemu_migration_cookie.c +++ b/src/qemu/qemu_migration_cookie.c @@ -478,9 +478,8 @@ qemuMigrationCookieAddNBD(qemuMigrationCookie *mig, virDomainObj *vm) { qemuDomainObjPrivate *priv = vm->privateData; - g_autoptr(GHashTable) stats = virHashNew(g_free); + g_autoptr(GHashTable) blockNamedNodeData = NULL; size_t i; - int rc; /* It is not a bug if there already is a NBD data */ qemuMigrationCookieNBDFree(mig->nbd); @@ -496,21 +495,15 @@ qemuMigrationCookieAddNBD(qemuMigrationCookie *mig, mig->nbd->disks = g_new0(struct qemuMigrationCookieNBDDisk, vm->def->ndisks); mig->nbd->ndisks = 0; - if (qemuDomainObjEnterMonitorAsync(vm, vm->job->asyncJob) < 0) - return -1; - - rc = qemuMonitorBlockStatsUpdateCapacityBlockdev(priv->mon, stats); - - qemuDomainObjExitMonitor(vm); - - if (rc < 0) + if (!(blockNamedNodeData = qemuBlockGetNamedNodeData(vm, vm->job->asyncJob))) return -1; for (i = 0; i < vm->def->ndisks; i++) { virDomainDiskDef *disk = vm->def->disks[i]; - qemuBlockStats *entry; + qemuBlockNamedNodeData *entry; - if (!(entry = virHashLookup(stats, qemuBlockStorageSourceGetEffectiveNodename(disk->src)))) + if (!(entry = virHashLookup(blockNamedNodeData, + qemuBlockStorageSourceGetEffectiveNodename(disk->src)))) continue; mig->nbd->disks[mig->nbd->ndisks].target = g_strdup(disk->dst); -- 2.47.3