qemu: tpm: Remove TPM state after successful migration

This patch 'fixes' the behavior of the persistent_state TPM domain XML
attribute that intends to preserve the state of the TPM but should not
keep the state around on all the hosts a VM has been migrated to. It
removes the TPM state directory structure from the source host upon
successful migration when non-shared storage is used. Similarly, it
removes it from the destination host upon migration failure when
non-shared storage is used.

Signed-off-by: Stefan Berger <stefanb@linux.ibm.com>
Signed-off-by: Michal Privoznik <mprivozn@redhat.com>
Reviewed-by: Michal Privoznik <mprivozn@redhat.com>
This commit is contained in:
Stefan Berger 2022-10-04 09:38:14 -04:00 committed by Michal Privoznik
parent 60a06693cc
commit 92f7aafced

View File

@ -4036,7 +4036,7 @@ qemuMigrationSrcConfirm(virQEMUDriver *driver,
virDomainDeleteConfig(cfg->configDir, cfg->autostartDir, vm);
vm->persistent = 0;
}
qemuDomainRemoveInactive(driver, vm, 0);
qemuDomainRemoveInactive(driver, vm, VIR_DOMAIN_UNDEFINE_TPM);
}
cleanup:
@ -6702,7 +6702,7 @@ qemuMigrationDstFinishActive(virQEMUDriver *driver,
}
if (!virDomainObjIsActive(vm))
qemuDomainRemoveInactive(driver, vm, 0);
qemuDomainRemoveInactive(driver, vm, VIR_DOMAIN_UNDEFINE_TPM);
virErrorRestore(&orig_err);
return NULL;