]> xenbits.xensource.com Git - libvirt.git/commitdiff
conf: Introduce VIR_DOMAIN_TPM_MODEL_DEFAULT as default model
authorStefan Berger <stefanb@linux.ibm.com>
Wed, 5 Feb 2020 18:35:45 +0000 (13:35 -0500)
committerJán Tomko <jtomko@redhat.com>
Wed, 5 Feb 2020 18:57:10 +0000 (19:57 +0100)
Introduce VIR_DOMAIN_TPM_MODEL_DEFAULT as a default model which we use
in case the user does not provide a model in the device XML. It has
the TIS's previous value of '0'. In the post parsing function
we change this default value to 'TIS' to have the same model as before.

Signed-off-by: Stefan Berger <stefanb@linux.ibm.com>
Reviewed-by: Ján Tomko <jtomko@redhat.com>
Signed-off-by: Ján Tomko <jtomko@redhat.com>
src/conf/domain_conf.c
src/conf/domain_conf.h
src/qemu/qemu_domain.c

index c7cc830c1d576ab699d5596cf373dc1c4452e015..040643e78fd10547d6ffe7a416b5fc4d3609009e 100644 (file)
@@ -1125,6 +1125,7 @@ VIR_ENUM_IMPL(virDomainRNGBackend,
 
 VIR_ENUM_IMPL(virDomainTPMModel,
               VIR_DOMAIN_TPM_MODEL_LAST,
+              "default",
               "tpm-tis",
               "tpm-crb",
 );
index 2bd80c2fbf333e5bfddb326d6c2f308b2624a5e5..cb4a0cedf0b7aaf084e74dc8355de71fd6182713 100644 (file)
@@ -1252,6 +1252,7 @@ struct _virDomainHubDef {
 };
 
 typedef enum {
+    VIR_DOMAIN_TPM_MODEL_DEFAULT,
     VIR_DOMAIN_TPM_MODEL_TIS,
     VIR_DOMAIN_TPM_MODEL_CRB,
 
index 6ebee4d5f407d5fcd20a7ada75b086431012827a..e152448cc6b8138334d0cbf455bad9ce0b1738d9 100644 (file)
@@ -9035,6 +9035,15 @@ qemuDomainHostdevDefPostParse(virDomainHostdevDefPtr hostdev,
 }
 
 
+static int
+qemuDomainTPMDefPostParse(virDomainTPMDefPtr tpm)
+{
+    if (tpm->model == VIR_DOMAIN_TPM_MODEL_DEFAULT)
+        tpm->model = VIR_DOMAIN_TPM_MODEL_TIS;
+    return 0;
+}
+
+
 static int
 qemuDomainDeviceDefPostParse(virDomainDeviceDefPtr dev,
                              const virDomainDef *def,
@@ -9088,6 +9097,10 @@ qemuDomainDeviceDefPostParse(virDomainDeviceDefPtr dev,
         ret = qemuDomainHostdevDefPostParse(dev->data.hostdev, qemuCaps);
         break;
 
+    case VIR_DOMAIN_DEVICE_TPM:
+        ret = qemuDomainTPMDefPostParse(dev->data.tpm);
+        break;
+
     case VIR_DOMAIN_DEVICE_LEASE:
     case VIR_DOMAIN_DEVICE_FS:
     case VIR_DOMAIN_DEVICE_INPUT:
@@ -9100,7 +9113,6 @@ qemuDomainDeviceDefPostParse(virDomainDeviceDefPtr dev,
     case VIR_DOMAIN_DEVICE_MEMBALLOON:
     case VIR_DOMAIN_DEVICE_NVRAM:
     case VIR_DOMAIN_DEVICE_RNG:
-    case VIR_DOMAIN_DEVICE_TPM:
     case VIR_DOMAIN_DEVICE_MEMORY:
     case VIR_DOMAIN_DEVICE_IOMMU:
         ret = 0;