On Tue, 2020-09-29 at 11:21 +0200, Peter Krempa wrote: > (...) > On Mon, Sep 21, 2020 at 15:07:31 +0200, Tim Wiederhake wrote: > > Signed-off-by: Tim Wiederhake <twiederh@xxxxxxxxxx> > > --- > > tests/cputest.c | 45 ++++++++++++++++++++++++++++++--------------- > > 1 file changed, 30 insertions(+), 15 deletions(-) > > > > diff --git a/tests/cputest.c b/tests/cputest.c > > index b40fd7f7f2..30a125c3da 100644 > > --- a/tests/cputest.c > > +++ b/tests/cputest.c > > @@ -203,12 +203,20 @@ cpuTestCompare(const void *arg) > > virCPUDefPtr host = NULL; > > virCPUDefPtr cpu = NULL; > > virCPUCompareResult result; > > + bool validate = !!(data->flags & > > VIR_CONNECT_COMPARE_CPU_VALIDATE_XML); > > > > - if (!(host = cpuTestLoadXML(data->arch, data->host)) || > > - !(cpu = cpuTestLoadXML(data->arch, data->name))) > > - goto cleanup; > > + host = cpuTestLoadXML(data->arch, data->host, validate); > > + cpu = cpuTestLoadXML(data->arch, data->name, validate); > > + > > + if (!host || !cpu) { > > + if (validate) > > + result = VIR_CPU_COMPARE_ERROR; > > + else > > + goto cleanup; > > + } else { > > + result = virCPUCompare(host->arch, host, cpu, false); > > + } > > (...) Also reporting a > validation failure as a COMPARE_ERROR seems wrong IMO. The enum virCPUCompareResult in libvirt-host.h defines the values VIR_CPU_COMPARE_{ERROR,INCOMPATIBLE,IDENTICAL,SUPERSET}. I believe VIR_CPU_COMPARE_ERROR to be correct here, but have rewritten this part for v3. Tim