[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Qemu-devel] [PATCH RFC ppc-next] target-ppc: Report CPU aliases for QMP
From: |
Andreas Färber |
Subject: |
[Qemu-devel] [PATCH RFC ppc-next] target-ppc: Report CPU aliases for QMP |
Date: |
Sat, 23 Feb 2013 18:52:24 +0100 |
The QMP query-cpu-definitions implementation iterated over CPU classes
only, which were getting less and less as aliases were extracted.
Keep them in QMP as valid -cpu arguments even if not guaranteed stable.
Signed-off-by: Andreas Färber <address@hidden>
---
target-ppc/translate_init.c | 21 +++++++++++++++++++++
1 Datei geändert, 21 Zeilen hinzugefügt(+)
diff --git a/target-ppc/translate_init.c b/target-ppc/translate_init.c
index 9cb8daa..d4871d1 100644
--- a/target-ppc/translate_init.c
+++ b/target-ppc/translate_init.c
@@ -8407,11 +8407,32 @@ CpuDefinitionInfoList *arch_query_cpu_definitions(Error
**errp)
{
CpuDefinitionInfoList *cpu_list = NULL;
GSList *list;
+ int i;
list = object_class_get_list(TYPE_POWERPC_CPU, false);
g_slist_foreach(list, ppc_cpu_defs_entry, &cpu_list);
g_slist_free(list);
+ for (i = 0; i < ARRAY_SIZE(ppc_cpu_aliases); i++) {
+ const PowerPCCPUAlias *alias = &ppc_cpu_aliases[i];
+ ObjectClass *oc;
+ CpuDefinitionInfoList *entry;
+ CpuDefinitionInfo *info;
+
+ oc = ppc_cpu_class_by_name(alias->model);
+ if (oc == NULL) {
+ continue;
+ }
+
+ info = g_malloc0(sizeof(*info));
+ info->name = g_strdup(alias->alias);
+
+ entry = g_malloc0(sizeof(*entry));
+ entry->value = info;
+ entry->next = cpu_list;
+ cpu_list = entry;
+ }
+
return cpu_list;
}
--
1.7.10.4
- [Qemu-devel] [PATCH RFC ppc-next] target-ppc: Report CPU aliases for QMP,
Andreas Färber <=