]> xenbits.xensource.com Git - people/liuw/libxenctrl-split/libvirt.git/commitdiff
Properly free vcpupin info for unplugged CPUs
authorJán Tomko <jtomko@redhat.com>
Tue, 22 Apr 2014 12:11:54 +0000 (14:11 +0200)
committerJán Tomko <jtomko@redhat.com>
Tue, 22 Apr 2014 12:49:25 +0000 (14:49 +0200)
Remove the pointer from def->cputune.vcpupin after unplugging
the CPU and also free the bitmap contained in the structure
by calling virDomainVcpuPinDel instead of VIR_FREE.

Introduced by commit 0df1a79.

This makes virDomainLookupVcpuPin redundant.

https://bugzilla.redhat.com/show_bug.cgi?id=1088165

src/conf/domain_conf.c
src/conf/domain_conf.h
src/libvirt_private.syms
src/qemu/qemu_driver.c

index 05fa3f9ffbbf55f964897a0388e337f371151980..cb0df3df7520bccfa0ed60abd066c4e1c45f5577 100644 (file)
@@ -10966,26 +10966,6 @@ virDomainVcpuPinDefParseXML(xmlNodePtr node,
     goto cleanup;
 }
 
-/*
- * Return the vcpupin related with the vcpu id on SUCCESS, or
- * NULL on failure.
- */
-virDomainVcpuPinDefPtr
-virDomainLookupVcpuPin(virDomainDefPtr def,
-                       int vcpuid)
-{
-    size_t i;
-
-    if (!def->cputune.vcpupin)
-        return NULL;
-
-    for (i = 0; i < def->cputune.nvcpupin; i++) {
-        if (def->cputune.vcpupin[i]->vcpuid == vcpuid)
-            return def->cputune.vcpupin[i];
-    }
-
-    return NULL;
-}
 
 int
 virDomainDefMaybeAddController(virDomainDefPtr def,
index 2ff0bc4cf4f4d4aae3ee269df6a2af7626da019b..3426c48ef93d315393be6daee176434d11f36bc5 100644 (file)
@@ -2671,9 +2671,6 @@ int virDomainObjListExport(virDomainObjListPtr doms,
                            virDomainObjListFilter filter,
                            unsigned int flags);
 
-virDomainVcpuPinDefPtr virDomainLookupVcpuPin(virDomainDefPtr def,
-                                              int vcpuid);
-
 int
 virDomainDefMaybeAddController(virDomainDefPtr def,
                                int type,
index 0e81f2f95263b18ea0f7110cc8bc9a06b64c0829..972b184e33cbdd6ab16e6a3e21430a609963b57b 100644 (file)
@@ -292,7 +292,6 @@ virDomainLifecycleTypeToString;
 virDomainLiveConfigHelperMethod;
 virDomainLockFailureTypeFromString;
 virDomainLockFailureTypeToString;
-virDomainLookupVcpuPin;
 virDomainMemballoonModelTypeFromString;
 virDomainMemballoonModelTypeToString;
 virDomainMemDumpTypeFromString;
index 59705852715e6e7ac10c21c12dbd7246c5433e84..3fbaa6267686eae7b206604b709bdf6b384b8a00 100644 (file)
@@ -4120,8 +4120,6 @@ static int qemuDomainHotplugVcpus(virQEMUDriverPtr driver,
         }
     } else {
         for (i = oldvcpus - 1; i >= nvcpus; i--) {
-            virDomainVcpuPinDefPtr vcpupin = NULL;
-
             if (priv->cgroup) {
                 if (virCgroupNewVcpu(priv->cgroup, i, false, &cgroup_vcpu) < 0)
                     goto cleanup;
@@ -4132,9 +4130,7 @@ static int qemuDomainHotplugVcpus(virQEMUDriverPtr driver,
             }
 
             /* Free vcpupin setting */
-            if ((vcpupin = virDomainLookupVcpuPin(vm->def, i))) {
-                VIR_FREE(vcpupin);
-            }
+            ignore_value(virDomainVcpuPinDel(vm->def, i));
         }
     }