[libvirt] [Qemu-devel] [PATCH] target-i386: Enable "check" mode by default

Igor Mammedov imammedo at redhat.com
Mon Aug 31 12:20:54 UTC 2015


On Wed, 26 Aug 2015 13:50:25 -0300
Eduardo Habkost <ehabkost at redhat.com> wrote:

> Current default behavior of QEMU is to silently disable features that
> are not supported by the host when a CPU model is requested in the
> command-line. This means that in addition to risking breaking guest ABI
> by default, we are silent about it.
> 
> I would like to enable "enforce" by default, but this can easily break
> existing production systems because of the way libvirt makes assumptions
> about CPU models today (this will change in the future, once QEMU
> provide a proper interface for checking if a CPU model is runnable).
> 
> But there's no reason we should be silent about it. So, change
> target-i386 to enable "check" mode by default so at least we have some
> warning printed to stderr (and hopefully logged somewhere) when QEMU
> disables a feature that is not supported by the host system.
> 
> Signed-off-by: Eduardo Habkost <ehabkost at redhat.com>
> ---
>  target-i386/cpu.c | 2 +-
>  1 file changed, 1 insertion(+), 1 deletion(-)
> 
> diff --git a/target-i386/cpu.c b/target-i386/cpu.c
> index cfb8aa7..32fee00 100644
> --- a/target-i386/cpu.c
> +++ b/target-i386/cpu.c
> @@ -3121,7 +3121,7 @@ static Property x86_cpu_properties[] = {
>      DEFINE_PROP_BOOL("hv-relaxed", X86CPU, hyperv_relaxed_timing, false),
>      DEFINE_PROP_BOOL("hv-vapic", X86CPU, hyperv_vapic, false),
>      DEFINE_PROP_BOOL("hv-time", X86CPU, hyperv_time, false),
> -    DEFINE_PROP_BOOL("check", X86CPU, check_cpuid, false),
> +    DEFINE_PROP_BOOL("check", X86CPU, check_cpuid, true),
>      DEFINE_PROP_BOOL("enforce", X86CPU, enforce_cpuid, false),
>      DEFINE_PROP_BOOL("kvm", X86CPU, expose_kvm, true),
>      DEFINE_PROP_UINT32("level", X86CPU, env.cpuid_level, 0),

Reviewed-by: Igor Mammedov <imammedo at redhat.com>




More information about the libvir-list mailing list