From: Jiri Denemark Date: Tue, 11 Mar 2025 09:05:28 +0000 (+0100) Subject: qemu: Rename outgoingMigration parameter in various TPM functions X-Git-Tag: v11.3.0-rc1~43 X-Git-Url: http://git.ipfire.org/?a=commitdiff_plain;h=a5e4ca6f02dc8250f84163a0d19b69300affde43;p=thirdparty%2Flibvirt.git qemu: Rename outgoingMigration parameter in various TPM functions The parameter is used to skip TPM state cleanup on outgoing migration with shared storage. But we also need to skip the cleanup after a failed incoming migration. Let's call the parameter "migration" to reflect its usage on both sides of migration. Signed-off-by: Jiri Denemark Reviewed-by: Ján Tomko --- diff --git a/src/qemu/qemu_domain.c b/src/qemu/qemu_domain.c index c3ca4b3040..47c110c6d7 100644 --- a/src/qemu/qemu_domain.c +++ b/src/qemu/qemu_domain.c @@ -5790,7 +5790,7 @@ static void qemuDomainRemoveInactiveCommon(virQEMUDriver *driver, virDomainObj *vm, virDomainUndefineFlagsValues flags, - bool outgoingMigration) + bool migration) { g_autoptr(virQEMUDriverConfig) cfg = virQEMUDriverGetConfig(driver); g_autofree char *snapDir = NULL; @@ -5816,7 +5816,7 @@ qemuDomainRemoveInactiveCommon(virQEMUDriver *driver, if (rmdir(chkDir) < 0 && errno != ENOENT) VIR_WARN("unable to remove checkpoint directory %s", chkDir); } - qemuExtDevicesCleanupHost(driver, vm->def, flags, outgoingMigration); + qemuExtDevicesCleanupHost(driver, vm->def, flags, migration); } @@ -5829,14 +5829,14 @@ void qemuDomainRemoveInactive(virQEMUDriver *driver, virDomainObj *vm, virDomainUndefineFlagsValues flags, - bool outgoingMigration) + bool migration) { if (vm->persistent) { /* Short-circuit, we don't want to remove a persistent domain */ return; } - qemuDomainRemoveInactiveCommon(driver, vm, flags, outgoingMigration); + qemuDomainRemoveInactiveCommon(driver, vm, flags, migration); virDomainObjListRemove(driver->domains, vm); } diff --git a/src/qemu/qemu_domain.h b/src/qemu/qemu_domain.h index 70e1fb187f..6fd47f16e7 100644 --- a/src/qemu/qemu_domain.h +++ b/src/qemu/qemu_domain.h @@ -693,7 +693,7 @@ int qemuDomainMomentDiscardAll(void *payload, void qemuDomainRemoveInactive(virQEMUDriver *driver, virDomainObj *vm, virDomainUndefineFlagsValues flags, - bool outgoingMigration); + bool migration); void qemuDomainRemoveInactiveLocked(virQEMUDriver *driver, diff --git a/src/qemu/qemu_extdevice.c b/src/qemu/qemu_extdevice.c index 78e72b7c10..31c7a14156 100644 --- a/src/qemu/qemu_extdevice.c +++ b/src/qemu/qemu_extdevice.c @@ -154,7 +154,7 @@ void qemuExtDevicesCleanupHost(virQEMUDriver *driver, virDomainDef *def, virDomainUndefineFlagsValues flags, - bool outgoingMigration) + bool migration) { size_t i; @@ -165,7 +165,7 @@ qemuExtDevicesCleanupHost(virQEMUDriver *driver, virDomainTPMDef *tpm = def->tpms[i]; if (tpm->type == VIR_DOMAIN_TPM_TYPE_EMULATOR) - qemuExtTPMCleanupHost(driver, tpm, flags, outgoingMigration); + qemuExtTPMCleanupHost(driver, tpm, flags, migration); } } @@ -280,7 +280,7 @@ qemuExtDevicesStart(virQEMUDriver *driver, void qemuExtDevicesStop(virQEMUDriver *driver, virDomainObj *vm, - bool outgoingMigration) + bool migration) { virDomainDef *def = vm->def; size_t i; @@ -297,7 +297,7 @@ qemuExtDevicesStop(virQEMUDriver *driver, for (i = 0; i < def->ntpms; i++) { if (def->tpms[i]->type == VIR_DOMAIN_TPM_TYPE_EMULATOR) - qemuExtTPMStop(driver, vm, outgoingMigration); + qemuExtTPMStop(driver, vm, migration); } for (i = 0; i < def->nnets; i++) { diff --git a/src/qemu/qemu_extdevice.h b/src/qemu/qemu_extdevice.h index d4ac9f395c..36f7fb77a8 100644 --- a/src/qemu/qemu_extdevice.h +++ b/src/qemu/qemu_extdevice.h @@ -48,7 +48,7 @@ int qemuExtDevicesPrepareHost(virQEMUDriver *driver, void qemuExtDevicesCleanupHost(virQEMUDriver *driver, virDomainDef *def, virDomainUndefineFlagsValues flags, - bool outgoingMigration) + bool migration) ATTRIBUTE_NONNULL(1) ATTRIBUTE_NONNULL(2); int qemuExtDevicesStart(virQEMUDriver *driver, @@ -59,7 +59,7 @@ int qemuExtDevicesStart(virQEMUDriver *driver, void qemuExtDevicesStop(virQEMUDriver *driver, virDomainObj *vm, - bool outgoingMigration) + bool migration) ATTRIBUTE_NONNULL(1) ATTRIBUTE_NONNULL(2); bool qemuExtDevicesHasDevice(virDomainDef *def); diff --git a/src/qemu/qemu_tpm.c b/src/qemu/qemu_tpm.c index 3e97518c06..0d3be3971a 100644 --- a/src/qemu/qemu_tpm.c +++ b/src/qemu/qemu_tpm.c @@ -929,7 +929,8 @@ qemuTPMEmulatorInitPaths(virDomainTPMDef *tpm, * @driver: QEMU driver * @tpm: TPM definition * @flags: flags indicating whether to keep or remove TPM persistent state - * @outgoingMigration: whether cleanup is due to an outgoing migration + * @migration: whether cleanup is due to a successful outgoing or failed + * incoming migration * * Clean up persistent storage for the swtpm. */ @@ -937,14 +938,12 @@ static void qemuTPMEmulatorCleanupHost(virQEMUDriver *driver, virDomainTPMDef *tpm, virDomainUndefineFlagsValues flags, - bool outgoingMigration) + bool migration) { g_autoptr(virQEMUDriverConfig) cfg = virQEMUDriverGetConfig(driver); - /* Never remove the state in case of outgoing migration with shared - * storage. - */ - if (outgoingMigration && + /* Never remove the state in case of migration with shared storage. */ + if (migration && virFileIsSharedFS(tpm->data.emulator.source_path, cfg->sharedFilesystems) == 1) return; @@ -1315,9 +1314,9 @@ void qemuExtTPMCleanupHost(virQEMUDriver *driver, virDomainTPMDef *tpm, virDomainUndefineFlagsValues flags, - bool outgoingMigration) + bool migration) { - qemuTPMEmulatorCleanupHost(driver, tpm, flags, outgoingMigration); + qemuTPMEmulatorCleanupHost(driver, tpm, flags, migration); } @@ -1341,7 +1340,7 @@ qemuExtTPMStart(virQEMUDriver *driver, void qemuExtTPMStop(virQEMUDriver *driver, virDomainObj *vm, - bool outgoingMigration) + bool migration) { g_autoptr(virQEMUDriverConfig) cfg = virQEMUDriverGetConfig(driver); g_autofree char *shortName = virDomainDefGetShortName(vm->def); @@ -1351,7 +1350,7 @@ qemuExtTPMStop(virQEMUDriver *driver, return; qemuTPMEmulatorStop(cfg->swtpmStateDir, shortName); - if (outgoingMigration && qemuTPMHasSharedStorage(driver, vm->def)) + if (migration && qemuTPMHasSharedStorage(driver, vm->def)) restoreTPMStateLabel = false; if (qemuSecurityRestoreTPMLabels(driver, vm, restoreTPMStateLabel, false) < 0) diff --git a/src/qemu/qemu_tpm.h b/src/qemu/qemu_tpm.h index 7096060a2a..37813087cf 100644 --- a/src/qemu/qemu_tpm.h +++ b/src/qemu/qemu_tpm.h @@ -38,7 +38,7 @@ int qemuExtTPMPrepareHost(virQEMUDriver *driver, void qemuExtTPMCleanupHost(virQEMUDriver *driver, virDomainTPMDef *tpm, virDomainUndefineFlagsValues flags, - bool outgoingMigration) + bool migration) ATTRIBUTE_NONNULL(1) ATTRIBUTE_NONNULL(2); int qemuExtTPMStart(virQEMUDriver *driver, @@ -52,7 +52,7 @@ int qemuExtTPMStart(virQEMUDriver *driver, void qemuExtTPMStop(virQEMUDriver *driver, virDomainObj *vm, - bool outgoingMigration) + bool migration) ATTRIBUTE_NONNULL(1) ATTRIBUTE_NONNULL(2); int qemuExtTPMSetupCgroup(virQEMUDriver *driver,