commit 3e1e16aa8d4238241a1806cb9bdb3b9ad60db777(Use a port from the
migration range for NBD as well) change ndb port allocation from
remotePorts to migrationPorts, but does not change the port releasing
process, which makes an error when migration seveal times(above 64).
Signed-off-by: Weiwei Li <nuonuoli(a)tencent.com>
---
src/qemu/qemu_migration.c | 8 ++++----
src/qemu/qemu_process.c | 2 +-
2 files changed, 5 insertions(+), 5 deletions(-)
diff --git a/src/qemu/qemu_migration.c b/src/qemu/qemu_migration.c
index ca70e35..0ad8054 100644
--- a/src/qemu/qemu_migration.c
+++ b/src/qemu/qemu_migration.c
@@ -1351,7 +1351,7 @@ qemuMigrationStartNBDServer(virQEMUDriverPtr driver,
unsigned short port = 0;
char *diskAlias = NULL;
size_t i;
-
+ VIR_DEBUG("DEBUG: in qemuMigrationStartNBDServer");
for (i = 0; i < vm->def->ndisks; i++) {
virDomainDiskDefPtr disk = vm->def->disks[i];
@@ -1389,7 +1389,7 @@ qemuMigrationStartNBDServer(virQEMUDriverPtr driver,
cleanup:
VIR_FREE(diskAlias);
if (ret < 0)
- virPortAllocatorRelease(driver->remotePorts, port);
+ virPortAllocatorRelease(driver->migrationPorts, port);
return ret;
}
@@ -1595,7 +1595,7 @@ qemuMigrationStopNBDServer(virQEMUDriverPtr driver,
qemuDomainObjExitMonitor(driver, vm);
- virPortAllocatorRelease(driver->remotePorts, priv->nbdPort);
+ virPortAllocatorRelease(driver->migrationPorts, priv->nbdPort);
priv->nbdPort = 0;
}
@@ -2813,7 +2813,7 @@ qemuMigrationPrepareAny(virQEMUDriverPtr driver,
VIR_FORCE_CLOSE(dataFD[1]);
if (vm) {
if (ret < 0) {
- virPortAllocatorRelease(driver->remotePorts, priv->nbdPort);
+ virPortAllocatorRelease(driver->migrationPorts, priv->nbdPort);
priv->nbdPort = 0;
}
if (ret >= 0 || vm->persistent)
diff --git a/src/qemu/qemu_process.c b/src/qemu/qemu_process.c
index ef258cf..ba8ba82 100644
--- a/src/qemu/qemu_process.c
+++ b/src/qemu/qemu_process.c
@@ -4839,7 +4839,7 @@ void qemuProcessStop(virQEMUDriverPtr driver,
}
}
- virPortAllocatorRelease(driver->remotePorts, priv->nbdPort);
+ virPortAllocatorRelease(driver->migrationPorts, priv->nbdPort);
priv->nbdPort = 0;
if (priv->agent) {
--
1.7.1