From: Jiri Denemark Date: Wed, 9 Oct 2019 08:16:17 +0000 (+0200) Subject: qemu: Split virQEMUCapsFetchCPUModels X-Git-Url: http://xenbits.xensource.com/gitweb?a=commitdiff_plain;h=857b88f5c3342bcdd0fbe47ba180409918bc09cb;p=libvirt.git qemu: Split virQEMUCapsFetchCPUModels Most of the code moved to a new virQEMUCapsFetchCPUDefinitions function and the existing virQEMUCapsFetchCPUModels just becomes a small wrapper around virQEMUCapsFetchCPUDefinitions and virQEMUCapsCPUDefsToModels. Signed-off-by: Jiri Denemark Reviewed-by: Ján Tomko --- diff --git a/src/qemu/qemu_capabilities.c b/src/qemu/qemu_capabilities.c index 9e7c42e666..cf4cd61057 100644 --- a/src/qemu/qemu_capabilities.c +++ b/src/qemu/qemu_capabilities.c @@ -2470,15 +2470,15 @@ virQEMUCapsProbeQMPMachineProps(virQEMUCapsPtr qemuCaps, } -int -virQEMUCapsFetchCPUModels(qemuMonitorPtr mon, - virArch arch, - virDomainCapsCPUModelsPtr *cpuModels) +static int +virQEMUCapsFetchCPUDefinitions(qemuMonitorPtr mon, + virArch arch, + qemuMonitorCPUDefsPtr *cpuDefs) { g_autoptr(qemuMonitorCPUDefs) defs = NULL; size_t i; - *cpuModels = NULL; + *cpuDefs = NULL; if (qemuMonitorGetCPUDefinitions(mon, &defs) < 0) return -1; @@ -2506,7 +2506,24 @@ virQEMUCapsFetchCPUModels(qemuMonitorPtr mon, } } - if (!(*cpuModels = virQEMUCapsCPUDefsToModels(defs, NULL, NULL))) + *cpuDefs = g_steal_pointer(&defs); + return 0; +} + + +int +virQEMUCapsFetchCPUModels(qemuMonitorPtr mon, + virArch arch, + virDomainCapsCPUModelsPtr *cpuModels) +{ + g_autoptr(qemuMonitorCPUDefs) defs = NULL; + + *cpuModels = NULL; + + if (virQEMUCapsFetchCPUDefinitions(mon, arch, &defs) < 0) + return -1; + + if (defs && !(*cpuModels = virQEMUCapsCPUDefsToModels(defs, NULL, NULL))) return -1; return 0;