[PATCH 20/24] machine: Register "memory-backend" as class property

Eduardo Habkost posted 24 patches 5 years, 4 months ago
There is a newer version of this series
[PATCH 20/24] machine: Register "memory-backend" as class property
Posted by Eduardo Habkost 5 years, 4 months ago
Class properties make QOM introspection simpler and easier, as
they don't require an object to be instantiated.

Signed-off-by: Eduardo Habkost <ehabkost@redhat.com>
---
Cc: Eduardo Habkost <ehabkost@redhat.com>
Cc: Marcel Apfelbaum <marcel.apfelbaum@gmail.com>
Cc: qemu-devel@nongnu.org
---
 hw/core/machine.c | 12 ++++++------
 1 file changed, 6 insertions(+), 6 deletions(-)

diff --git a/hw/core/machine.c b/hw/core/machine.c
index ea26d612374..675ca6d651c 100644
--- a/hw/core/machine.c
+++ b/hw/core/machine.c
@@ -874,6 +874,12 @@ static void machine_class_init(ObjectClass *oc, void *data)
         machine_get_memory_encryption, machine_set_memory_encryption);
     object_class_property_set_description(oc, "memory-encryption",
         "Set memory encryption object to use");
+
+    object_class_property_add_str(oc, "memory-backend",
+                                  machine_get_memdev, machine_set_memdev);
+    object_class_property_set_description(oc, "memory-backend",
+                                          "Set RAM backend"
+                                          "Valid value is ID of hostmem based backend");
 }
 
 static void machine_class_base_init(ObjectClass *oc, void *data)
@@ -925,12 +931,6 @@ static void machine_initfn(Object *obj)
                                         "Table (HMAT)");
     }
 
-    object_property_add_str(obj, "memory-backend",
-                            machine_get_memdev, machine_set_memdev);
-    object_property_set_description(obj, "memory-backend",
-                                    "Set RAM backend"
-                                    "Valid value is ID of hostmem based backend");
-
     /* Register notifier when init is done for sysbus sanity checks */
     ms->sysbus_notifier.notify = machine_init_notify;
     qemu_add_machine_init_done_notifier(&ms->sysbus_notifier);
-- 
2.26.2


Re: [PATCH 20/24] machine: Register "memory-backend" as class property
Posted by Igor Mammedov 5 years, 4 months ago
On Mon, 21 Sep 2020 18:10:41 -0400
Eduardo Habkost <ehabkost@redhat.com> wrote:

> Class properties make QOM introspection simpler and easier, as
> they don't require an object to be instantiated.
> 
> Signed-off-by: Eduardo Habkost <ehabkost@redhat.com>
> ---
> Cc: Eduardo Habkost <ehabkost@redhat.com>
> Cc: Marcel Apfelbaum <marcel.apfelbaum@gmail.com>
> Cc: qemu-devel@nongnu.org

Reviewed-by: Igor Mammedov <imammedo@redhat.com>

> ---
>  hw/core/machine.c | 12 ++++++------
>  1 file changed, 6 insertions(+), 6 deletions(-)
> 
> diff --git a/hw/core/machine.c b/hw/core/machine.c
> index ea26d612374..675ca6d651c 100644
> --- a/hw/core/machine.c
> +++ b/hw/core/machine.c
> @@ -874,6 +874,12 @@ static void machine_class_init(ObjectClass *oc, void *data)
>          machine_get_memory_encryption, machine_set_memory_encryption);
>      object_class_property_set_description(oc, "memory-encryption",
>          "Set memory encryption object to use");
> +
> +    object_class_property_add_str(oc, "memory-backend",
> +                                  machine_get_memdev, machine_set_memdev);
> +    object_class_property_set_description(oc, "memory-backend",
> +                                          "Set RAM backend"
> +                                          "Valid value is ID of hostmem based backend");
>  }
>  
>  static void machine_class_base_init(ObjectClass *oc, void *data)
> @@ -925,12 +931,6 @@ static void machine_initfn(Object *obj)
>                                          "Table (HMAT)");
>      }
>  
> -    object_property_add_str(obj, "memory-backend",
> -                            machine_get_memdev, machine_set_memdev);
> -    object_property_set_description(obj, "memory-backend",
> -                                    "Set RAM backend"
> -                                    "Valid value is ID of hostmem based backend");
> -
>      /* Register notifier when init is done for sysbus sanity checks */
>      ms->sysbus_notifier.notify = machine_init_notify;
>      qemu_add_machine_init_done_notifier(&ms->sysbus_notifier);