[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: [Qemu-devel] [PATCH v3] s390: return unavailable features via query-
From: |
David Hildenbrand |
Subject: |
Re: [Qemu-devel] [PATCH v3] s390: return unavailable features via query-cpu-definitions |
Date: |
Tue, 4 Jul 2017 11:35:09 +0200 |
User-agent: |
Mozilla/5.0 (X11; Linux x86_64; rv:52.0) Gecko/20100101 Thunderbird/52.1.0 |
> +
> static void create_cpu_model_list(ObjectClass *klass, void *opaque)
> {
> - CpuDefinitionInfoList **cpu_list = opaque;
> + struct CpuDefinitionInfoListData *cpu_list_data = opaque;
> + CpuDefinitionInfoList **cpu_list = &cpu_list_data->list;
> CpuDefinitionInfoList *entry;
> CpuDefinitionInfo *info;
> char *name = g_strdup(object_class_get_name(klass));
> @@ -300,7 +331,19 @@ static void create_cpu_model_list(ObjectClass *klass,
> void *opaque)
> info->migration_safe = scc->is_migration_safe;
> info->q_static = scc->is_static;
> info->q_typename = g_strdup(object_class_get_name(klass));
> -
Wonder if we should add the following:
/* the host model can never be used under TCG */
if (scc->kvm_required && !kvm_enabled())) {
info->has_unavailable_features = true;
list_add_feat("type", &info->unavailable_features);
} else if (cpu_list_data->model ...
> + /* check for unavailable features */
> + if (cpu_list_data->model) {
> + Object *obj;
> + S390CPU *sc;
> + obj = object_new(object_class_get_name(klass));
> + sc = S390_CPU(obj);
So we can drop the check here (if we have a host/max_model definition
under KVM, then all models have sc->model set). But the current code
should also work (it simply will not indicate runability information for
the "host" model under TCG, as sc->model will be NULL).
> + if (sc->model) {
> + info->has_unavailable_features = true;
> + check_unavailable_features(cpu_list_data->model, sc->model,
> + &info->unavailable_features);
> + }
> + object_unref(obj);
> + }
>
Looks good to me and produced the expected result under TCG.
Feel free to add my
Reviewed-by: David Hildenbrand <address@hidden>
with or without the modification.
--
Thanks,
David