qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Qemu-devel] [PATCH v2] target-i386: Improve x86_cpu_list output


From: Igor Mammedov
Subject: Re: [Qemu-devel] [PATCH v2] target-i386: Improve x86_cpu_list output
Date: Wed, 27 Feb 2013 10:30:31 +0100

On Wed, 27 Feb 2013 10:15:51 +0100
Jan Kiszka <address@hidden> wrote:

> Several issues fixed:
>  - We were missing a bunch of feature lists. Fix this by simply dumping
>    the meta list feature_word_info.
>  - kvm_enabled() cannot be true at this point because accelerators are
>    initialized much later during init. Also, hiding this makes it very
>    hard to discover for users. Simply dump unconditionally if CONFIG_KVM
>    is set.
>  - Add explanation for "host" CPU type.
> 
> Signed-off-by: Jan Kiszka <address@hidden>
Reviewed-By: Igor Mammedov <address@hidden>

> ---
> 
> Changes in v2:
>  - Do not dump "host" type if CONFIG_KVM is not set
>  - Explain that "host" depends on KVM mode
> 
>  target-i386/cpu.c |   23 ++++++++++++-----------
>  1 files changed, 12 insertions(+), 11 deletions(-)
> 
> diff --git a/target-i386/cpu.c b/target-i386/cpu.c
> index 5582e5f..b4189c3 100644
> --- a/target-i386/cpu.c
> +++ b/target-i386/cpu.c
> @@ -1463,18 +1463,19 @@ void x86_cpu_list(FILE *f, fprintf_function
> cpu_fprintf) snprintf(buf, sizeof(buf), "%s", def->name);
>          (*cpu_fprintf)(f, "x86 %16s  %-48s\n", buf, def->model_id);
>      }
> -    if (kvm_enabled()) {
> -        (*cpu_fprintf)(f, "x86 %16s\n", "[host]");
> -    }
> +#ifdef CONFIG_KVM
> +    (*cpu_fprintf)(f, "x86 %16s  %-48s\n", "host",
> +                   "KVM processor with all supported host features "
> +                   "(only available in KVM mode)");
> +#endif
> +
>      (*cpu_fprintf)(f, "\nRecognized CPUID flags:\n");
> -    listflags(buf, sizeof(buf), (uint32_t)~0, feature_name, 1);
> -    (*cpu_fprintf)(f, "  %s\n", buf);
> -    listflags(buf, sizeof(buf), (uint32_t)~0, ext_feature_name, 1);
> -    (*cpu_fprintf)(f, "  %s\n", buf);
> -    listflags(buf, sizeof(buf), (uint32_t)~0, ext2_feature_name, 1);
> -    (*cpu_fprintf)(f, "  %s\n", buf);
> -    listflags(buf, sizeof(buf), (uint32_t)~0, ext3_feature_name, 1);
> -    (*cpu_fprintf)(f, "  %s\n", buf);
> +    for (i = 0; i < ARRAY_SIZE(feature_word_info); i++) {
> +        FeatureWordInfo *fw = &feature_word_info[i];
> +
> +        listflags(buf, sizeof(buf), (uint32_t)~0, fw->feat_names, 1);
> +        (*cpu_fprintf)(f, "  %s\n", buf);
> +    }
>  }
>  
>  CpuDefinitionInfoList *arch_query_cpu_definitions(Error **errp)




reply via email to

[Prev in Thread] Current Thread [Next in Thread]