qemu-devel.nongnu.org archive mirror
 help / color / mirror / Atom feed
* [PATCH v2] target/ppc: Return default CPU for max CPU
@ 2022-06-28 20:55 Murilo Opsfelder Araujo
  2022-06-30 20:58 ` Víctor Colombo
  2022-07-02 13:28 ` Daniel Henrique Barboza
  0 siblings, 2 replies; 3+ messages in thread
From: Murilo Opsfelder Araujo @ 2022-06-28 20:55 UTC (permalink / raw)
  To: qemu-ppc
  Cc: qemu-devel, David Gibson, mopsfelder, Murilo Opsfelder Araujo,
	Cédric Le Goater, Daniel Henrique Barboza,
	Daniel P . Berrangé, Greg Kurz, Matheus K . Ferst,
	Thomas Huth, Fabiano Rosas

All ppc CPUs represent hardware that exists in the real world, i.e.: we
do not have a "max" CPU with all possible emulated features enabled.
Return the default CPU type for the machine because that has greater
chance of being useful as the "max" CPU.

Resolves: https://gitlab.com/qemu-project/qemu/-/issues/1038
Cc: Cédric Le Goater <clg@kaod.org>
Cc: Daniel Henrique Barboza <danielhb413@gmail.com>
Cc: Daniel P. Berrangé <berrange@redhat.com>
Cc: Greg Kurz <groug@kaod.org>
Cc: Matheus K. Ferst <matheus.ferst@eldorado.org.br>
Cc: Thomas Huth <thuth@redhat.com>
Signed-off-by: Murilo Opsfelder Araujo <muriloo@linux.ibm.com>
Signed-off-by: Fabiano Rosas <farosas@linux.ibm.com>
---
v2:
- Return the default CPU of the machine instead of hard-coded alias.

v1: https://lore.kernel.org/qemu-devel/20220531172711.94564-1-muriloo@linux.ibm.com/

 target/ppc/cpu-models.c |  1 -
 target/ppc/cpu_init.c   | 19 +++++++++++++++++++
 2 files changed, 19 insertions(+), 1 deletion(-)

diff --git a/target/ppc/cpu-models.c b/target/ppc/cpu-models.c
index 976be5e0d1..05589eb21d 100644
--- a/target/ppc/cpu-models.c
+++ b/target/ppc/cpu-models.c
@@ -879,7 +879,6 @@ PowerPCCPUAlias ppc_cpu_aliases[] = {
     { "755", "755_v2.8" },
     { "goldfinger", "755_v2.8" },
     { "7400", "7400_v2.9" },
-    { "max", "7400_v2.9" },
     { "g4",  "7400_v2.9" },
     { "7410", "7410_v1.4" },
     { "nitro", "7410_v1.4" },
diff --git a/target/ppc/cpu_init.c b/target/ppc/cpu_init.c
index c16cb8dbe7..8ee0b7c785 100644
--- a/target/ppc/cpu_init.c
+++ b/target/ppc/cpu_init.c
@@ -47,6 +47,10 @@
 #include "spr_common.h"
 #include "power8-pmu.h"
 
+#ifndef CONFIG_USER_ONLY
+#include "hw/boards.h"
+#endif
+
 /* #define PPC_DEBUG_SPR */
 /* #define USE_APPLE_GDB */
 
@@ -6963,6 +6967,21 @@ static ObjectClass *ppc_cpu_class_by_name(const char *name)
         }
     }
 
+    /*
+     * All ppc CPUs represent hardware that exists in the real world, i.e.: we
+     * do not have a "max" CPU with all possible emulated features enabled.
+     * Return the default CPU type for the machine because that has greater
+     * chance of being useful as the "max" CPU.
+     */
+#if !defined(CONFIG_USER_ONLY)
+    if (strcmp(name, "max") == 0) {
+        MachineClass *mc = MACHINE_GET_CLASS(qdev_get_machine());
+        if (mc) {
+            return object_class_by_name(mc->default_cpu_type);
+        }
+    }
+#endif
+
     cpu_model = g_ascii_strdown(name, -1);
     p = ppc_cpu_lookup_alias(cpu_model);
     if (p) {
-- 
2.36.1



^ permalink raw reply related	[flat|nested] 3+ messages in thread

* Re: [PATCH v2] target/ppc: Return default CPU for max CPU
  2022-06-28 20:55 [PATCH v2] target/ppc: Return default CPU for max CPU Murilo Opsfelder Araujo
@ 2022-06-30 20:58 ` Víctor Colombo
  2022-07-02 13:28 ` Daniel Henrique Barboza
  1 sibling, 0 replies; 3+ messages in thread
From: Víctor Colombo @ 2022-06-30 20:58 UTC (permalink / raw)
  To: Murilo Opsfelder Araujo, qemu-ppc
  Cc: qemu-devel, David Gibson, mopsfelder, Cédric Le Goater,
	Daniel Henrique Barboza, Daniel P . Berrangé, Greg Kurz,
	Matheus K . Ferst, Thomas Huth, Fabiano Rosas

On 28/06/2022 17:55, Murilo Opsfelder Araujo wrote:
> All ppc CPUs represent hardware that exists in the real world, i.e.: we
> do not have a "max" CPU with all possible emulated features enabled.
> Return the default CPU type for the machine because that has greater
> chance of being useful as the "max" CPU.
> 
> Resolves: https://gitlab.com/qemu-project/qemu/-/issues/1038
> Cc: Cédric Le Goater <clg@kaod.org>
> Cc: Daniel Henrique Barboza <danielhb413@gmail.com>
> Cc: Daniel P. Berrangé <berrange@redhat.com>
> Cc: Greg Kurz <groug@kaod.org>
> Cc: Matheus K. Ferst <matheus.ferst@eldorado.org.br>
> Cc: Thomas Huth <thuth@redhat.com>
> Signed-off-by: Murilo Opsfelder Araujo <muriloo@linux.ibm.com>
> Signed-off-by: Fabiano Rosas <farosas@linux.ibm.com>
> ---
> v2:
> - Return the default CPU of the machine instead of hard-coded alias.
> 
> v1: https://lore.kernel.org/qemu-devel/20220531172711.94564-1-muriloo@linux.ibm.com/
> 
>   target/ppc/cpu-models.c |  1 -
>   target/ppc/cpu_init.c   | 19 +++++++++++++++++++
>   2 files changed, 19 insertions(+), 1 deletion(-)
> 
> diff --git a/target/ppc/cpu-models.c b/target/ppc/cpu-models.c
> index 976be5e0d1..05589eb21d 100644
> --- a/target/ppc/cpu-models.c
> +++ b/target/ppc/cpu-models.c
> @@ -879,7 +879,6 @@ PowerPCCPUAlias ppc_cpu_aliases[] = {
>       { "755", "755_v2.8" },
>       { "goldfinger", "755_v2.8" },
>       { "7400", "7400_v2.9" },
> -    { "max", "7400_v2.9" },
>       { "g4",  "7400_v2.9" },
>       { "7410", "7410_v1.4" },
>       { "nitro", "7410_v1.4" },
> diff --git a/target/ppc/cpu_init.c b/target/ppc/cpu_init.c
> index c16cb8dbe7..8ee0b7c785 100644
> --- a/target/ppc/cpu_init.c
> +++ b/target/ppc/cpu_init.c
> @@ -47,6 +47,10 @@
>   #include "spr_common.h"
>   #include "power8-pmu.h"
> 
> +#ifndef CONFIG_USER_ONLY
> +#include "hw/boards.h"
> +#endif
> +
>   /* #define PPC_DEBUG_SPR */
>   /* #define USE_APPLE_GDB */
> 
> @@ -6963,6 +6967,21 @@ static ObjectClass *ppc_cpu_class_by_name(const char *name)
>           }
>       }
> 
> +    /*
> +     * All ppc CPUs represent hardware that exists in the real world, i.e.: we
> +     * do not have a "max" CPU with all possible emulated features enabled.
> +     * Return the default CPU type for the machine because that has greater
> +     * chance of being useful as the "max" CPU.
> +     */
> +#if !defined(CONFIG_USER_ONLY)
> +    if (strcmp(name, "max") == 0) {
> +        MachineClass *mc = MACHINE_GET_CLASS(qdev_get_machine());
> +        if (mc) {
> +            return object_class_by_name(mc->default_cpu_type);
> +        }
> +    }
> +#endif
> +
>       cpu_model = g_ascii_strdown(name, -1);
>       p = ppc_cpu_lookup_alias(cpu_model);
>       if (p) {
> --
> 2.36.1
> 
> 

Reviewed-by: Víctor Colombo <victor.colombo@eldorado.org.br>

Best regards,

-- 
Víctor Cora Colombo
Instituto de Pesquisas ELDORADO
Aviso Legal - Disclaimer <https://www.eldorado.org.br/disclaimer.html>


^ permalink raw reply	[flat|nested] 3+ messages in thread

* Re: [PATCH v2] target/ppc: Return default CPU for max CPU
  2022-06-28 20:55 [PATCH v2] target/ppc: Return default CPU for max CPU Murilo Opsfelder Araujo
  2022-06-30 20:58 ` Víctor Colombo
@ 2022-07-02 13:28 ` Daniel Henrique Barboza
  1 sibling, 0 replies; 3+ messages in thread
From: Daniel Henrique Barboza @ 2022-07-02 13:28 UTC (permalink / raw)
  To: Murilo Opsfelder Araujo, qemu-ppc
  Cc: qemu-devel, David Gibson, mopsfelder, Cédric Le Goater,
	Daniel P . Berrangé, Greg Kurz, Matheus K . Ferst,
	Thomas Huth, Fabiano Rosas



On 6/28/22 17:55, Murilo Opsfelder Araujo wrote:
> All ppc CPUs represent hardware that exists in the real world, i.e.: we
> do not have a "max" CPU with all possible emulated features enabled.
> Return the default CPU type for the machine because that has greater
> chance of being useful as the "max" CPU.
> 
> Resolves: https://gitlab.com/qemu-project/qemu/-/issues/1038
> Cc: Cédric Le Goater <clg@kaod.org>
> Cc: Daniel Henrique Barboza <danielhb413@gmail.com>
> Cc: Daniel P. Berrangé <berrange@redhat.com>
> Cc: Greg Kurz <groug@kaod.org>
> Cc: Matheus K. Ferst <matheus.ferst@eldorado.org.br>
> Cc: Thomas Huth <thuth@redhat.com>
> Signed-off-by: Murilo Opsfelder Araujo <muriloo@linux.ibm.com>
> Signed-off-by: Fabiano Rosas <farosas@linux.ibm.com>
> ---

Queued in gitlab.com/danielhb/qemu/tree/ppc-next. Thanks,


Daniel

> v2:
> - Return the default CPU of the machine instead of hard-coded alias.
> 
> v1: https://lore.kernel.org/qemu-devel/20220531172711.94564-1-muriloo@linux.ibm.com/
> 
>   target/ppc/cpu-models.c |  1 -
>   target/ppc/cpu_init.c   | 19 +++++++++++++++++++
>   2 files changed, 19 insertions(+), 1 deletion(-)
> 
> diff --git a/target/ppc/cpu-models.c b/target/ppc/cpu-models.c
> index 976be5e0d1..05589eb21d 100644
> --- a/target/ppc/cpu-models.c
> +++ b/target/ppc/cpu-models.c
> @@ -879,7 +879,6 @@ PowerPCCPUAlias ppc_cpu_aliases[] = {
>       { "755", "755_v2.8" },
>       { "goldfinger", "755_v2.8" },
>       { "7400", "7400_v2.9" },
> -    { "max", "7400_v2.9" },
>       { "g4",  "7400_v2.9" },
>       { "7410", "7410_v1.4" },
>       { "nitro", "7410_v1.4" },
> diff --git a/target/ppc/cpu_init.c b/target/ppc/cpu_init.c
> index c16cb8dbe7..8ee0b7c785 100644
> --- a/target/ppc/cpu_init.c
> +++ b/target/ppc/cpu_init.c
> @@ -47,6 +47,10 @@
>   #include "spr_common.h"
>   #include "power8-pmu.h"
>   
> +#ifndef CONFIG_USER_ONLY
> +#include "hw/boards.h"
> +#endif
> +
>   /* #define PPC_DEBUG_SPR */
>   /* #define USE_APPLE_GDB */
>   
> @@ -6963,6 +6967,21 @@ static ObjectClass *ppc_cpu_class_by_name(const char *name)
>           }
>       }
>   
> +    /*
> +     * All ppc CPUs represent hardware that exists in the real world, i.e.: we
> +     * do not have a "max" CPU with all possible emulated features enabled.
> +     * Return the default CPU type for the machine because that has greater
> +     * chance of being useful as the "max" CPU.
> +     */
> +#if !defined(CONFIG_USER_ONLY)
> +    if (strcmp(name, "max") == 0) {
> +        MachineClass *mc = MACHINE_GET_CLASS(qdev_get_machine());
> +        if (mc) {
> +            return object_class_by_name(mc->default_cpu_type);
> +        }
> +    }
> +#endif
> +
>       cpu_model = g_ascii_strdown(name, -1);
>       p = ppc_cpu_lookup_alias(cpu_model);
>       if (p) {


^ permalink raw reply	[flat|nested] 3+ messages in thread

end of thread, other threads:[~2022-07-02 13:31 UTC | newest]

Thread overview: 3+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2022-06-28 20:55 [PATCH v2] target/ppc: Return default CPU for max CPU Murilo Opsfelder Araujo
2022-06-30 20:58 ` Víctor Colombo
2022-07-02 13:28 ` Daniel Henrique Barboza

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).