mirror of https://gitee.com/openkylin/libvirt.git
qemu: Set SPAPR TPM default to 2.0 and prevent 1.2 choice
The firmware (SLOF) on QEMU for ppc64 does not support TPM 1.2, so prevent the choice of TPM 1.2 when the SPAPR device model is chosen and use a default of '2.0' (TPM 2) for the backend. This patch addresses BZ 1781913: https://bugzilla.redhat.com/show_bug.cgi?id=1781913 Signed-off-by: Stefan Berger <stefanb@linux.ibm.com> Reviewed-by: Peter Krempa <pkrempa@redhat.com> Reviewed-by: Daniel Henrique Barboza <danielhb413@gmail.com> Reviewed-by: Marc-André Lureau <marcandre.lureau@redhat.com>
This commit is contained in:
parent
5ab5239d89
commit
182285214c
|
@ -4115,8 +4115,12 @@ qemuDomainDefTPMsPostParse(virDomainDefPtr def)
|
|||
virDomainTPMDefPtr tpm = def->tpms[i];
|
||||
|
||||
/* TPM 1.2 and 2 are not compatible, so we choose a specific version here */
|
||||
if (tpm->version == VIR_DOMAIN_TPM_VERSION_DEFAULT)
|
||||
tpm->version = VIR_DOMAIN_TPM_VERSION_1_2;
|
||||
if (tpm->version == VIR_DOMAIN_TPM_VERSION_DEFAULT) {
|
||||
if (tpm->model == VIR_DOMAIN_TPM_MODEL_SPAPR)
|
||||
tpm->version = VIR_DOMAIN_TPM_VERSION_2_0;
|
||||
else
|
||||
tpm->version = VIR_DOMAIN_TPM_VERSION_1_2;
|
||||
}
|
||||
|
||||
if (tpm->model == VIR_DOMAIN_TPM_MODEL_SPAPR_PROXY) {
|
||||
if (proxyTPM) {
|
||||
|
|
|
@ -3654,6 +3654,12 @@ qemuValidateDomainDeviceDefTPM(virDomainTPMDef *tpm,
|
|||
virDomainTPMModelTypeToString(tpm->model));
|
||||
return -1;
|
||||
}
|
||||
/* TPM 1.2 + SPAPR do not work with any 'type' (backend) */
|
||||
if (tpm->model == VIR_DOMAIN_TPM_MODEL_SPAPR) {
|
||||
virReportError(VIR_ERR_CONFIG_UNSUPPORTED, "%s",
|
||||
_("TPM 1.2 is not supported with the SPAPR device model"));
|
||||
return -1;
|
||||
}
|
||||
break;
|
||||
case VIR_DOMAIN_TPM_VERSION_2_0:
|
||||
case VIR_DOMAIN_TPM_VERSION_DEFAULT:
|
||||
|
|
Loading…
Reference in New Issue