mirror of
https://gitlab.com/libvirt/libvirt.git
synced 2025-03-07 17:28:15 +00:00
conf: capabilities: Clean up freeing of virBitmap
Use automatic freeing where possible and use g_clear_pointer instead of manual NULL-ing. Signed-off-by: Peter Krempa <pkrempa@redhat.com> Reviewed-by: Ján Tomko <jtomko@redhat.com>
This commit is contained in:
parent
5b3f00d087
commit
473df98ad8
@ -104,10 +104,8 @@ virCapabilitiesClearHostNUMACellCPUTopology(virCapsHostNUMACellCPU *cpus,
|
|||||||
if (!cpus)
|
if (!cpus)
|
||||||
return;
|
return;
|
||||||
|
|
||||||
for (i = 0; i < ncpus; i++) {
|
for (i = 0; i < ncpus; i++)
|
||||||
virBitmapFree(cpus[i].siblings);
|
g_clear_pointer(&cpus[i].siblings, virBitmapFree);
|
||||||
cpus[i].siblings = NULL;
|
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
static void
|
static void
|
||||||
@ -1416,20 +1414,18 @@ virBitmap *
|
|||||||
virCapabilitiesHostNUMAGetCpus(virCapsHostNUMA *caps,
|
virCapabilitiesHostNUMAGetCpus(virCapsHostNUMA *caps,
|
||||||
virBitmap *nodemask)
|
virBitmap *nodemask)
|
||||||
{
|
{
|
||||||
virBitmap *ret = NULL;
|
g_autoptr(virBitmap) ret = NULL;
|
||||||
unsigned int maxcpu = virCapabilitiesHostNUMAGetMaxcpu(caps);
|
unsigned int maxcpu = virCapabilitiesHostNUMAGetMaxcpu(caps);
|
||||||
ssize_t node = -1;
|
ssize_t node = -1;
|
||||||
|
|
||||||
ret = virBitmapNew(maxcpu + 1);
|
ret = virBitmapNew(maxcpu + 1);
|
||||||
|
|
||||||
while ((node = virBitmapNextSetBit(nodemask, node)) >= 0) {
|
while ((node = virBitmapNextSetBit(nodemask, node)) >= 0) {
|
||||||
if (virCapabilitiesHostNUMAGetCellCpus(caps, node, ret) < 0) {
|
if (virCapabilitiesHostNUMAGetCellCpus(caps, node, ret) < 0)
|
||||||
virBitmapFree(ret);
|
|
||||||
return NULL;
|
return NULL;
|
||||||
}
|
|
||||||
}
|
}
|
||||||
|
|
||||||
return ret;
|
return g_steal_pointer(&ret);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user