[libvirt] [PATCH 1/2] qemu: Separate fetching CPU definitions from filling qemuCaps
Jiri Denemark
jdenemar at redhat.com
Mon Dec 11 13:33:26 UTC 2017
On Mon, Dec 11, 2017 at 07:59:44 -0500, John Ferlan wrote:
>
>
> On 12/07/2017 08:20 AM, Jiri Denemark wrote:
> > virQEMUCapsProbeQMPCPUDefinitions is now a small wrapper which fills in
> > qemuCaps with CPU models fetched by virQEMUCapsFetchCPUDefinitions.
> >
> > Signed-off-by: Jiri Denemark <jdenemar at redhat.com>
> > ---
> > src/qemu/qemu_capabilities.c | 59 +++++++++++++++++++++++++++-----------------
> > src/qemu/qemu_capabilities.h | 1 +
> > 2 files changed, 38 insertions(+), 22 deletions(-)
> >
> > diff --git a/src/qemu/qemu_capabilities.c b/src/qemu/qemu_capabilities.c
> > index 29714855b0..8c65de956e 100644
> > --- a/src/qemu/qemu_capabilities.c
> > +++ b/src/qemu/qemu_capabilities.c
> > @@ -2956,30 +2956,19 @@ virQEMUCapsProbeQMPMachineTypes(virQEMUCapsPtr qemuCaps,
> > }
> >
> >
> > -int
> > -virQEMUCapsProbeQMPCPUDefinitions(virQEMUCapsPtr qemuCaps,
> > - qemuMonitorPtr mon,
> > - bool tcg)
> > +virDomainCapsCPUModelsPtr
> > +virQEMUCapsFetchCPUDefinitions(qemuMonitorPtr mon)
> > {
> > - virDomainCapsCPUModelsPtr models;
> > - qemuMonitorCPUDefInfoPtr *cpus;
> > - int ncpus;
> > - int ret = -1;
> > + virDomainCapsCPUModelsPtr models = NULL;
> > + qemuMonitorCPUDefInfoPtr *cpus = NULL;
> > + int ncpus = 0;
> > size_t i;
> >
> > - if (!virQEMUCapsGet(qemuCaps, QEMU_CAPS_QUERY_CPU_DEFINITIONS))
> > - return 0;
> > -
> > if ((ncpus = qemuMonitorGetCPUDefinitions(mon, &cpus)) < 0)
> > - return -1;
> > + goto error;
>
> This adjustment causes a Coverity found problem for the "for (i = 0; i <
> ncpus; i++)" in cleanup: on failure ncpus == -1.
Oh right, a patch is coming...
Jirka
More information about the libvir-list
mailing list