qemuDomainFixupCPUs(virDomainObjPtr vm,
virCPUDefPtr *origCPU)
{
- virCPUDefPtr fixedCPU = NULL;
- virCPUDefPtr fixedOrig = NULL;
+ g_autoptr(virCPUDef) fixedCPU = NULL;
+ g_autoptr(virCPUDef) fixedOrig = NULL;
virArch arch = vm->def->os.arch;
- int ret = -1;
if (!ARCH_IS_X86(arch))
return 0;
(!(fixedCPU = virCPUDefCopyWithoutModel(vm->def->cpu)) ||
virCPUDefCopyModelFilter(fixedCPU, vm->def->cpu, false,
virQEMUCapsCPUFilterFeatures, &arch) < 0))
- goto cleanup;
+ return -1;
if (virCPUDefFindFeature(*origCPU, "cmt") &&
(!(fixedOrig = virCPUDefCopyWithoutModel(*origCPU)) ||
virCPUDefCopyModelFilter(fixedOrig, *origCPU, false,
virQEMUCapsCPUFilterFeatures, &arch) < 0))
- goto cleanup;
+ return -1;
if (fixedCPU) {
virCPUDefFree(vm->def->cpu);
*origCPU = g_steal_pointer(&fixedOrig);
}
- ret = 0;
-
- cleanup:
- virCPUDefFree(fixedCPU);
- virCPUDefFree(fixedOrig);
- return ret;
+ return 0;
}