[PATCH 16/24] conf: numa: Avoid re-allocation of the NUMA conf

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



As the numa object is now always present we can avoid the ad-hoc
allocation code.
---
 src/conf/numa_conf.c | 26 ++------------------------
 1 file changed, 2 insertions(+), 24 deletions(-)

diff --git a/src/conf/numa_conf.c b/src/conf/numa_conf.c
index 2a5fb3c..70a38d6 100644
--- a/src/conf/numa_conf.c
+++ b/src/conf/numa_conf.c
@@ -117,11 +117,6 @@ virDomainNumatuneNodeParseXML(virDomainNumaPtr *numatunePtr,
         goto cleanup;
     }

-    if (!numatune && VIR_ALLOC(numatune) < 0)
-        goto cleanup;
-
-    *numatunePtr = numatune;
-
     VIR_FREE(numatune->mem_nodes);
     if (VIR_ALLOC_N(numatune->mem_nodes, ncells) < 0)
         goto cleanup;
@@ -224,11 +219,6 @@ virDomainNumatuneParseXML(virDomainNumaPtr *numatunePtr,

     node = virXPathNode("./numatune/memory[1]", ctxt);

-    if (*numatunePtr) {
-        virDomainNumaFree(*numatunePtr);
-        *numatunePtr = NULL;
-    }
-
     if (!placement_static && !node)
         placement = VIR_DOMAIN_NUMATUNE_PLACEMENT_AUTO;

@@ -454,27 +444,20 @@ virDomainNumatuneSet(virDomainNumaPtr *numatunePtr,
                      int mode,
                      virBitmapPtr nodeset)
 {
-    bool created = false;
     int ret = -1;
-    virDomainNumaPtr numatune;
+    virDomainNumaPtr numatune = *numatunePtr;

     /* No need to do anything in this case */
     if (mode == -1 && placement == -1 && !nodeset)
         return 0;

-    if (!(*numatunePtr)) {
-        if (VIR_ALLOC(*numatunePtr) < 0)
-            goto cleanup;
-
-        created = true;
+    if (!numatune->memory.specified) {
         if (mode == -1)
             mode = VIR_DOMAIN_NUMATUNE_MEM_STRICT;
         if (placement == -1)
             placement = VIR_DOMAIN_NUMATUNE_PLACEMENT_DEFAULT;
     }

-    numatune = *numatunePtr;
-
     /* Range checks */
     if (mode != -1 &&
         (mode < 0 || mode >= VIR_DOMAIN_NUMATUNE_MEM_LAST)) {
@@ -534,11 +517,6 @@ virDomainNumatuneSet(virDomainNumaPtr *numatunePtr,
     ret = 0;

  cleanup:
-    if (ret < 0 && created) {
-        virDomainNumaFree(*numatunePtr);
-        *numatunePtr = NULL;
-    }
-
     return ret;
 }

-- 
2.2.2

--
libvir-list mailing list
libvir-list@xxxxxxxxxx
https://www.redhat.com/mailman/listinfo/libvir-list




[Index of Archives]     [Virt Tools]     [Libvirt Users]     [Lib OS Info]     [Fedora Users]     [Fedora Desktop]     [Fedora SELinux]     [Big List of Linux Books]     [Yosemite News]     [KDE Users]     [Fedora Tools]