[libvirt] [PATCH] Take disabled/forced CPU features into account
Daniel P. Berrange
berrange at redhat.com
Tue Jan 12 20:26:53 UTC 2010
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 at redhat.com>
> ---
> 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 :|
More information about the libvir-list
mailing list