qemu: migration: error if tunnelled + storage specified

Since as the code indicates it doesn't work yet, so let's be
explicit about it.
This commit is contained in:
Cole Robinson 2013-05-28 15:27:45 -04:00
parent 5751fc4f4e
commit 98bbda00cf

View File

@ -1900,13 +1900,14 @@ char *qemuMigrationBegin(virQEMUDriverPtr driver,
if (flags & (VIR_MIGRATE_NON_SHARED_DISK | VIR_MIGRATE_NON_SHARED_INC) && if (flags & (VIR_MIGRATE_NON_SHARED_DISK | VIR_MIGRATE_NON_SHARED_INC) &&
virQEMUCapsGet(priv->qemuCaps, QEMU_CAPS_NBD_SERVER)) { virQEMUCapsGet(priv->qemuCaps, QEMU_CAPS_NBD_SERVER)) {
/* TODO support NBD for TUNNELLED migration */ /* TODO support NBD for TUNNELLED migration */
if (flags & VIR_MIGRATE_TUNNELLED) if (flags & VIR_MIGRATE_TUNNELLED) {
VIR_DEBUG("NBD in tunnelled migration is currently not supported"); virReportError(VIR_ERR_ARGUMENT_UNSUPPORTED, "%s",
else { _("NBD in tunnelled migration is currently not supported"));
goto cleanup;
}
cookieFlags |= QEMU_MIGRATION_COOKIE_NBD; cookieFlags |= QEMU_MIGRATION_COOKIE_NBD;
priv->nbdPort = 0; priv->nbdPort = 0;
} }
}
if (!(mig = qemuMigrationEatCookie(driver, vm, NULL, 0, 0))) if (!(mig = qemuMigrationEatCookie(driver, vm, NULL, 0, 0)))
goto cleanup; goto cleanup;
@ -2200,17 +2201,12 @@ done:
if (mig->nbd && if (mig->nbd &&
flags & (VIR_MIGRATE_NON_SHARED_DISK | VIR_MIGRATE_NON_SHARED_INC) && flags & (VIR_MIGRATE_NON_SHARED_DISK | VIR_MIGRATE_NON_SHARED_INC) &&
virQEMUCapsGet(priv->qemuCaps, QEMU_CAPS_NBD_SERVER)) { virQEMUCapsGet(priv->qemuCaps, QEMU_CAPS_NBD_SERVER)) {
/* TODO support NBD for TUNNELLED migration */
if (flags & VIR_MIGRATE_TUNNELLED)
VIR_DEBUG("NBD in tunnelled migration is currently not supported");
else {
if (qemuMigrationStartNBDServer(driver, vm, listenAddr) < 0) { if (qemuMigrationStartNBDServer(driver, vm, listenAddr) < 0) {
/* error already reported */ /* error already reported */
goto endjob; goto endjob;
} }
cookieFlags |= QEMU_MIGRATION_COOKIE_NBD; cookieFlags |= QEMU_MIGRATION_COOKIE_NBD;
} }
}
if (qemuMigrationBakeCookie(mig, driver, vm, cookieout, if (qemuMigrationBakeCookie(mig, driver, vm, cookieout,
cookieoutlen, cookieFlags) < 0) { cookieoutlen, cookieFlags) < 0) {