diff mbox

[V7,04/16] ppc: spapr: add 2.4 machine type

Message ID 1429770109-23873-5-git-send-email-jasowang@redhat.com
State New
Headers show

Commit Message

Jason Wang April 23, 2015, 6:21 a.m. UTC
The following patches will limit the following things to legacy
machine type:

- maximum number of virtqueues for virtio-pci were limited to 64

Cc: Alexander Graf <agraf@suse.de>
Cc: qemu-ppc@nongnu.org

Signed-off-by: Jason Wang <jasowang@redhat.com>
---
 hw/ppc/spapr.c | 31 +++++++++++++++++++++++++++++--
 1 file changed, 29 insertions(+), 2 deletions(-)

Comments

Michael S. Tsirkin April 27, 2015, 11:03 a.m. UTC | #1
On Thu, Apr 23, 2015 at 02:21:37PM +0800, Jason Wang wrote:
> The following patches will limit the following things to legacy
> machine type:
> 
> - maximum number of virtqueues for virtio-pci were limited to 64
> 
> Cc: Alexander Graf <agraf@suse.de>
> Cc: qemu-ppc@nongnu.org
> 
> Signed-off-by: Jason Wang <jasowang@redhat.com>

This won't be needed if as I suggest we just increase this
value everywhere.

> ---
>  hw/ppc/spapr.c | 31 +++++++++++++++++++++++++++++--
>  1 file changed, 29 insertions(+), 2 deletions(-)
> 
> diff --git a/hw/ppc/spapr.c b/hw/ppc/spapr.c
> index 9e676ef..8e43aa2 100644
> --- a/hw/ppc/spapr.c
> +++ b/hw/ppc/spapr.c
> @@ -1825,8 +1825,13 @@ static const TypeInfo spapr_machine_info = {
>  #define SPAPR_COMPAT_2_1 \
>          SPAPR_COMPAT_2_2
>  
> +static void spapr_compat_2_3(Object *obj)
> +{
> +}
> +
>  static void spapr_compat_2_2(Object *obj)
>  {
> +    spapr_compat_2_3(obj);
>  }
>  
>  static void spapr_compat_2_1(Object *obj)
> @@ -1834,6 +1839,12 @@ static void spapr_compat_2_1(Object *obj)
>      spapr_compat_2_2(obj);
>  }
>  
> +static void spapr_machine_2_3_instance_init(Object *obj)
> +{
> +    spapr_compat_2_3(obj);
> +    spapr_machine_initfn(obj);
> +}
> +
>  static void spapr_machine_2_2_instance_init(Object *obj)
>  {
>      spapr_compat_2_2(obj);
> @@ -1893,14 +1904,29 @@ static void spapr_machine_2_3_class_init(ObjectClass *oc, void *data)
>  
>      mc->name = "pseries-2.3";
>      mc->desc = "pSeries Logical Partition (PAPR compliant) v2.3";
> -    mc->alias = "pseries";
> -    mc->is_default = 1;
>  }
>  
>  static const TypeInfo spapr_machine_2_3_info = {
>      .name          = TYPE_SPAPR_MACHINE "2.3",
>      .parent        = TYPE_SPAPR_MACHINE,
>      .class_init    = spapr_machine_2_3_class_init,
> +    .instance_init = spapr_machine_2_3_instance_init,
> +};
> +
> +static void spapr_machine_2_4_class_init(ObjectClass *oc, void *data)
> +{
> +    MachineClass *mc = MACHINE_CLASS(oc);
> +
> +    mc->name = "pseries-2.4";
> +    mc->desc = "pSeries Logical Partition (PAPR compliant) v2.4";
> +    mc->alias = "pseries";
> +    mc->is_default = 1;
> +}
> +
> +static const TypeInfo spapr_machine_2_4_info = {
> +    .name          = TYPE_SPAPR_MACHINE "2.4",
> +    .parent        = TYPE_SPAPR_MACHINE,
> +    .class_init    = spapr_machine_2_4_class_init,
>  };
>  
>  static void spapr_machine_register_types(void)
> @@ -1909,6 +1935,7 @@ static void spapr_machine_register_types(void)
>      type_register_static(&spapr_machine_2_1_info);
>      type_register_static(&spapr_machine_2_2_info);
>      type_register_static(&spapr_machine_2_3_info);
> +    type_register_static(&spapr_machine_2_4_info);
>  }
>  
>  type_init(spapr_machine_register_types)
> -- 
> 2.1.0
Alexander Graf April 27, 2015, 1:14 p.m. UTC | #2
On 04/23/2015 08:21 AM, Jason Wang wrote:
> The following patches will limit the following things to legacy
> machine type:
>
> - maximum number of virtqueues for virtio-pci were limited to 64
>
> Cc: Alexander Graf <agraf@suse.de>
> Cc: qemu-ppc@nongnu.org
>
> Signed-off-by: Jason Wang <jasowang@redhat.com>

Reviewed-by: Alexander Graf <agraf@suse.de>
diff mbox

Patch

diff --git a/hw/ppc/spapr.c b/hw/ppc/spapr.c
index 9e676ef..8e43aa2 100644
--- a/hw/ppc/spapr.c
+++ b/hw/ppc/spapr.c
@@ -1825,8 +1825,13 @@  static const TypeInfo spapr_machine_info = {
 #define SPAPR_COMPAT_2_1 \
         SPAPR_COMPAT_2_2
 
+static void spapr_compat_2_3(Object *obj)
+{
+}
+
 static void spapr_compat_2_2(Object *obj)
 {
+    spapr_compat_2_3(obj);
 }
 
 static void spapr_compat_2_1(Object *obj)
@@ -1834,6 +1839,12 @@  static void spapr_compat_2_1(Object *obj)
     spapr_compat_2_2(obj);
 }
 
+static void spapr_machine_2_3_instance_init(Object *obj)
+{
+    spapr_compat_2_3(obj);
+    spapr_machine_initfn(obj);
+}
+
 static void spapr_machine_2_2_instance_init(Object *obj)
 {
     spapr_compat_2_2(obj);
@@ -1893,14 +1904,29 @@  static void spapr_machine_2_3_class_init(ObjectClass *oc, void *data)
 
     mc->name = "pseries-2.3";
     mc->desc = "pSeries Logical Partition (PAPR compliant) v2.3";
-    mc->alias = "pseries";
-    mc->is_default = 1;
 }
 
 static const TypeInfo spapr_machine_2_3_info = {
     .name          = TYPE_SPAPR_MACHINE "2.3",
     .parent        = TYPE_SPAPR_MACHINE,
     .class_init    = spapr_machine_2_3_class_init,
+    .instance_init = spapr_machine_2_3_instance_init,
+};
+
+static void spapr_machine_2_4_class_init(ObjectClass *oc, void *data)
+{
+    MachineClass *mc = MACHINE_CLASS(oc);
+
+    mc->name = "pseries-2.4";
+    mc->desc = "pSeries Logical Partition (PAPR compliant) v2.4";
+    mc->alias = "pseries";
+    mc->is_default = 1;
+}
+
+static const TypeInfo spapr_machine_2_4_info = {
+    .name          = TYPE_SPAPR_MACHINE "2.4",
+    .parent        = TYPE_SPAPR_MACHINE,
+    .class_init    = spapr_machine_2_4_class_init,
 };
 
 static void spapr_machine_register_types(void)
@@ -1909,6 +1935,7 @@  static void spapr_machine_register_types(void)
     type_register_static(&spapr_machine_2_1_info);
     type_register_static(&spapr_machine_2_2_info);
     type_register_static(&spapr_machine_2_3_info);
+    type_register_static(&spapr_machine_2_4_info);
 }
 
 type_init(spapr_machine_register_types)