On Tue, Jan 12, 2010 at 03:25:50PM +0100, Jiri Denemark wrote: > When comparing x86 CPUs, features with 'disabled' policy were mistakenly > required to be supported by the host CPU. > > Likewise, features with 'force' policy which were supported by host CPU > would make CPUs incompatible if 'strict' match was used by guest CPU. > > This patch fixes both issues. > > Signed-off-by: Jiri Denemark <jdenemar@xxxxxxxxxx> > --- > src/cpu/cpu_x86.c | 3 +++ > 1 files changed, 3 insertions(+), 0 deletions(-) > > diff --git a/src/cpu/cpu_x86.c b/src/cpu/cpu_x86.c > index 50c03ad..298b632 100644 > --- a/src/cpu/cpu_x86.c > +++ b/src/cpu/cpu_x86.c > @@ -782,11 +782,14 @@ x86Compute(virCPUDefPtr host, > if (!(cpu_forbid = x86ModelFromCPU(cpu, map, VIR_CPU_FEATURE_FORBID))) > goto error; > > + x86ModelSubtract(cpu_require, cpu_disable); > + > if ((diff = x86ModelCopy(host_model)) == NULL) > goto no_memory; > > x86ModelSubtract(diff, cpu_require); > x86ModelSubtract(diff, cpu_optional); > + x86ModelSubtract(diff, cpu_force); > > for (i = 0; i < cpu_forbid->ncpuid; i++) { > const struct cpuX86cpuid *cpuid1; ACK Daniel -- |: Red Hat, Engineering, London -o- http://people.redhat.com/berrange/ :| |: http://libvirt.org -o- http://virt-manager.org -o- http://ovirt.org :| |: http://autobuild.org -o- http://search.cpan.org/~danberr/ :| |: GnuPG: 7D3B9505 -o- F3C9 553F A1DA 4AC2 5648 23C1 B3DF F742 7D3B 9505 :| -- Libvir-list mailing list Libvir-list@xxxxxxxxxx https://www.redhat.com/mailman/listinfo/libvir-list