Commit 02693cc4 authored by Greg Kurz's avatar Greg Kurz Committed by Paolo Bonzini
Browse files

i386: fix '-cpu ?' output for host cpu type



Since commit d6dcc558, '-cpu ?' shows the description of the
X86_CPU_TYPE_NAME("max") for the host CPU model:

Enables all features supported by the accelerator in the current host

instead of the expected:

KVM processor with all supported host features

or

HVF processor with all supported host features

This is caused by the early use of kvm_enabled() and hvf_enabled() in
a class_init function. Since the accelerator isn't configured yet, both
helpers return false unconditionally.

A QEMU binary will only be compiled with one of these accelerators, not
both. The appropriate description can thus be decided at build time.

Signed-off-by: default avatarGreg Kurz <groug@kaod.org>
Message-Id: <153055056654.212317.4697363278304826913.stgit@bahia.lan>
Signed-off-by: default avatarPaolo Bonzini <pbonzini@redhat.com>
parent 70da3048
Loading
Loading
Loading
Loading
+7 −7
Original line number Diff line number Diff line
@@ -2836,13 +2836,13 @@ static void host_x86_cpu_class_init(ObjectClass *oc, void *data)
    xcc->host_cpuid_required = true;
    xcc->ordering = 8;

    if (kvm_enabled()) {
#if defined(CONFIG_KVM)
    xcc->model_description =
        "KVM processor with all supported host features ";
    } else if (hvf_enabled()) {
#elif defined(CONFIG_HVF)
    xcc->model_description =
        "HVF processor with all supported host features ";
    }
#endif
}

static const TypeInfo host_x86_cpu_type_info = {