]> git.ipfire.org Git - thirdparty/libvirt.git/commitdiff
qemu_validate.c: move NUMA HMAT check to qemuValidateDomainDefNuma()
authorDaniel Henrique Barboza <danielhb413@gmail.com>
Wed, 14 Oct 2020 18:01:24 +0000 (15:01 -0300)
committerDaniel Henrique Barboza <danielhb413@gmail.com>
Thu, 15 Oct 2020 13:54:33 +0000 (10:54 -0300)
Reviewed-by: Michal Privoznik <mprivozn@redhat.com>
Signed-off-by: Daniel Henrique Barboza <danielhb413@gmail.com>
src/qemu/qemu_validate.c

index 5db4ef57ac9f07e59882629fc545e98f2ad4357f..1e1571b966ffa984a192d0509a0246c3bd58463d 100644 (file)
@@ -753,13 +753,22 @@ qemuValidateDomainDefNuma(const virDomainDef *def,
         return -1;
     }
 
-    if (virDomainNumaHasHMAT(def->numa) ||
-        !virQEMUCapsGetMachineNumaMemSupported(qemuCaps,
+    if (!virQEMUCapsGetMachineNumaMemSupported(qemuCaps,
                                                def->virtType,
                                                def->os.machine)) {
         needBacking = true;
     }
 
+    if (virDomainNumaHasHMAT(def->numa)) {
+        needBacking = true;
+
+        if (!virQEMUCapsGet(qemuCaps, QEMU_CAPS_NUMA_HMAT)) {
+            virReportError(VIR_ERR_CONFIG_UNSUPPORTED, "%s",
+                           _("HMAT is not supported with this QEMU"));
+            return -1;
+        }
+    }
+
     if (needBacking && !hasMemoryCap) {
         virReportError(VIR_ERR_CONFIG_UNSUPPORTED, "%s",
                        _("NUMA without specified memory backing is not "
@@ -1068,13 +1077,6 @@ qemuValidateDomainDef(const virDomainDef *def,
         }
     }
 
-    if (virDomainNumaHasHMAT(def->numa) &&
-        !virQEMUCapsGet(qemuCaps, QEMU_CAPS_NUMA_HMAT)) {
-        virReportError(VIR_ERR_CONFIG_UNSUPPORTED, "%s",
-                       _("HMAT is not supported with this QEMU"));
-        return -1;
-    }
-
     if (def->genidRequested &&
         !virQEMUCapsGet(qemuCaps, QEMU_CAPS_DEVICE_VMGENID)) {
         virReportError(VIR_ERR_CONFIG_UNSUPPORTED, "%s",