]> xenbits.xensource.com Git - libvirt.git/commitdiff
conf: Drop unnecessary caps parsing logic
authorCole Robinson <crobinso@redhat.com>
Thu, 29 Jun 2017 12:49:33 +0000 (08:49 -0400)
committerCole Robinson <crobinso@redhat.com>
Thu, 26 Jul 2018 14:13:00 +0000 (10:13 -0400)
The comment says:

    /* If the logic here seems fairly arbitrary, that's because it is :)
     * This is duplicating how the code worked before
     * CapabilitiesDomainDataLookup was added. We can simplify this,
     * but it would take a bit of work because the test suite fails
     * in numerous minor ways. */

Nowadays the test suite changes appear quite simple, just extending
test capabilities data a bit so that we aren't trying to define
invalid arch/os/virtType/machine combos

Acked-by: Michal Privoznik <mprivozn@redhat.com>
Signed-off-by: Cole Robinson <crobinso@redhat.com>
src/conf/domain_conf.c
tests/testutils.c
tests/testutilsqemu.c
tests/vircapstest.c

index 40f0a9c9343a4c937bf8fdb10d4646c08724f2aa..9f6fd8505841aacb263a220c4e2b9adb687aa728 100644 (file)
@@ -19178,20 +19178,9 @@ virDomainDefParseCaps(virDomainDefPtr def,
         goto cleanup;
     }
 
-    if ((!def->os.arch || !def->os.machine) &&
-        !(flags & VIR_DOMAIN_DEF_PARSE_SKIP_OSTYPE_CHECKS)) {
-        /* If the logic here seems fairly arbitrary, that's because it is :)
-         * This is duplicating how the code worked before
-         * CapabilitiesDomainDataLookup was added. We can simplify this,
-         * but it would take a bit of work because the test suite fails
-         * in numerous minor ways. */
-        bool use_virttype = ((def->os.arch == VIR_ARCH_NONE) ||
-            !def->os.machine);
-
+    if (!(flags & VIR_DOMAIN_DEF_PARSE_SKIP_OSTYPE_CHECKS)) {
         if (!(capsdata = virCapabilitiesDomainDataLookup(caps,
-                def->os.type,
-                def->os.arch,
-                use_virttype ? def->virtType : VIR_DOMAIN_VIRT_NONE,
+                def->os.type, def->os.arch, def->virtType,
                 NULL, NULL)))
             goto cleanup;
 
index 423f4bfdff1603dacacf1ef5759d6b8b7454e405..ab938c12fca86438e8f413eec3bfb62c3a2bdbfe 100644 (file)
@@ -1196,7 +1196,12 @@ virCapsPtr virTestGenericCapsInit(void)
 
     if (!virCapabilitiesAddGuestDomain(guest, VIR_DOMAIN_VIRT_TEST, NULL, NULL, 0, NULL))
         goto error;
-
+    if (!virCapabilitiesAddGuestDomain(guest, VIR_DOMAIN_VIRT_QEMU,
+                                       NULL, NULL, 0, NULL))
+        goto error;
+    if (!virCapabilitiesAddGuestDomain(guest, VIR_DOMAIN_VIRT_KVM,
+                                       NULL, NULL, 0, NULL))
+        goto error;
 
     if ((guest = virCapabilitiesAddGuest(caps, VIR_DOMAIN_OSTYPE_HVM, VIR_ARCH_X86_64,
                                          "/usr/bin/acme-virt", NULL,
@@ -1205,6 +1210,12 @@ virCapsPtr virTestGenericCapsInit(void)
 
     if (!virCapabilitiesAddGuestDomain(guest, VIR_DOMAIN_VIRT_TEST, NULL, NULL, 0, NULL))
         goto error;
+    if (!virCapabilitiesAddGuestDomain(guest, VIR_DOMAIN_VIRT_QEMU,
+                                       NULL, NULL, 0, NULL))
+        goto error;
+    if (!virCapabilitiesAddGuestDomain(guest, VIR_DOMAIN_VIRT_KVM,
+                                       NULL, NULL, 0, NULL))
+        goto error;
 
 
     if (virTestGetDebug() > 1) {
index dc7e90b9521226731df69e751e35299a9e8b227e..cc2f8a7b6445942c3d7c6f625014acb9c01b1b06 100644 (file)
@@ -219,6 +219,9 @@ static int testQemuAddPPC64Guest(virCapsPtr caps)
 
     if (!virCapabilitiesAddGuestDomain(guest, VIR_DOMAIN_VIRT_QEMU, NULL, NULL, 0, NULL))
         goto error;
+    if (!virCapabilitiesAddGuestDomain(guest, VIR_DOMAIN_VIRT_KVM,
+                                       NULL, NULL, 0, NULL))
+        goto error;
 
     return 0;
 
@@ -246,6 +249,9 @@ static int testQemuAddPPC64LEGuest(virCapsPtr caps)
 
     if (!virCapabilitiesAddGuestDomain(guest, VIR_DOMAIN_VIRT_QEMU, NULL, NULL, 0, NULL))
         goto error;
+    if (!virCapabilitiesAddGuestDomain(guest, VIR_DOMAIN_VIRT_KVM,
+                                       NULL, NULL, 0, NULL))
+        goto error;
 
     return 0;
 
@@ -276,6 +282,9 @@ static int testQemuAddPPCGuest(virCapsPtr caps)
 
     if (!virCapabilitiesAddGuestDomain(guest, VIR_DOMAIN_VIRT_QEMU, NULL, NULL, 0, NULL))
         goto error;
+    if (!virCapabilitiesAddGuestDomain(guest, VIR_DOMAIN_VIRT_KVM,
+                                       NULL, NULL, 0, NULL))
+        goto error;
 
     return 0;
 
@@ -307,6 +316,9 @@ static int testQemuAddS390Guest(virCapsPtr caps)
 
     if (!virCapabilitiesAddGuestDomain(guest, VIR_DOMAIN_VIRT_QEMU, NULL, NULL, 0, NULL))
         goto error;
+    if (!virCapabilitiesAddGuestDomain(guest, VIR_DOMAIN_VIRT_KVM,
+                                       NULL, NULL, 0, NULL))
+        goto error;
 
     return 0;
 
@@ -338,6 +350,9 @@ static int testQemuAddArmGuest(virCapsPtr caps)
 
     if (!virCapabilitiesAddGuestDomain(guest, VIR_DOMAIN_VIRT_QEMU, NULL, NULL, 0, NULL))
         goto error;
+    if (!virCapabilitiesAddGuestDomain(guest, VIR_DOMAIN_VIRT_KVM,
+                                       NULL, NULL, 0, NULL))
+        goto error;
 
     return 0;
 
@@ -367,6 +382,9 @@ static int testQemuAddAARCH64Guest(virCapsPtr caps)
 
     if (!virCapabilitiesAddGuestDomain(guest, VIR_DOMAIN_VIRT_QEMU, NULL, NULL, 0, NULL))
         goto error;
+    if (!virCapabilitiesAddGuestDomain(guest, VIR_DOMAIN_VIRT_KVM,
+                                       NULL, NULL, 0, NULL))
+        goto error;
 
     return 0;
 
index 1df3fa091f5ca174c2a8185b22efe043bdb607d6..19e3c79302084cf3a782dbf1a33d3bc0a638c437 100644 (file)
@@ -195,8 +195,6 @@ test_virCapsDomainDataLookupQEMU(const void *data ATTRIBUTE_UNUSED)
     CAPS_EXPECT_ERR(VIR_DOMAIN_OSTYPE_LINUX, VIR_ARCH_NONE, VIR_DOMAIN_VIRT_NONE, NULL, NULL);
     CAPS_EXPECT_ERR(-1, VIR_ARCH_PPC64LE, VIR_DOMAIN_VIRT_NONE, NULL, "pc");
     CAPS_EXPECT_ERR(-1, VIR_ARCH_MIPS, VIR_DOMAIN_VIRT_NONE, NULL, NULL);
-    CAPS_EXPECT_ERR(-1, VIR_ARCH_AARCH64, VIR_DOMAIN_VIRT_KVM,
-        "/usr/bin/qemu-system-aarch64", NULL);
     CAPS_EXPECT_ERR(-1, VIR_ARCH_NONE, VIR_DOMAIN_VIRT_NONE,
         "/usr/bin/qemu-system-aarch64", "pc");
     CAPS_EXPECT_ERR(-1, VIR_ARCH_NONE, VIR_DOMAIN_VIRT_VMWARE, NULL, "pc");