Message ID | 20200921221045.699690-6-ehabkost@redhat.com |
---|---|
State | New |
Headers | show |
Series | qom: Convert some properties to class properties | expand |
On Tue, Sep 22, 2020 at 2:13 AM 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> > Reviewed-by: Marc-André Lureau <marcandre.lureau@redhat.com> --- > Cc: "Michael S. Tsirkin" <mst@redhat.com> > Cc: qemu-devel@nongnu.org > --- > backends/vhost-user.c | 6 +++--- > 1 file changed, 3 insertions(+), 3 deletions(-) > > diff --git a/backends/vhost-user.c b/backends/vhost-user.c > index 9e6e1985465..858fdeae26c 100644 > --- a/backends/vhost-user.c > +++ b/backends/vhost-user.c > @@ -175,9 +175,9 @@ static char *get_chardev(Object *obj, Error **errp) > return NULL; > } > > -static void vhost_user_backend_init(Object *obj) > +static void vhost_user_backend_class_init(ObjectClass *oc, void *data) > { > - object_property_add_str(obj, "chardev", get_chardev, set_chardev); > + object_class_property_add_str(oc, "chardev", get_chardev, > set_chardev); > } > > static void vhost_user_backend_finalize(Object *obj) > @@ -195,7 +195,7 @@ static const TypeInfo vhost_user_backend_info = { > .name = TYPE_VHOST_USER_BACKEND, > .parent = TYPE_OBJECT, > .instance_size = sizeof(VhostUserBackend), > - .instance_init = vhost_user_backend_init, > + .class_init = vhost_user_backend_class_init, > .instance_finalize = vhost_user_backend_finalize, > .class_size = sizeof(VhostUserBackendClass), > }; > -- > 2.26.2 > > > -- Marc-André Lureau <div dir="ltr"><div dir="ltr"><br></div><br><div class="gmail_quote"><div dir="ltr" class="gmail_attr">On Tue, Sep 22, 2020 at 2:13 AM Eduardo Habkost <<a href="mailto:ehabkost@redhat.com">ehabkost@redhat.com</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">Class properties make QOM introspection simpler and easier, as<br> they don't require an object to be instantiated.<br> <br> Signed-off-by: Eduardo Habkost <<a href="mailto:ehabkost@redhat.com" target="_blank">ehabkost@redhat.com</a>><br></blockquote><div><br></div><div>Reviewed-by: Marc-André Lureau <<a href="mailto:marcandre.lureau@redhat.com">marcandre.lureau@redhat.com</a>></div><div> <br></div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex"> ---<br> Cc: "Michael S. Tsirkin" <<a href="mailto:mst@redhat.com" target="_blank">mst@redhat.com</a>><br> Cc: <a href="mailto:qemu-devel@nongnu.org" target="_blank">qemu-devel@nongnu.org</a><br> ---<br> backends/vhost-user.c | 6 +++---<br> 1 file changed, 3 insertions(+), 3 deletions(-)<br> <br> diff --git a/backends/vhost-user.c b/backends/vhost-user.c<br> index 9e6e1985465..858fdeae26c 100644<br> --- a/backends/vhost-user.c<br> +++ b/backends/vhost-user.c<br> @@ -175,9 +175,9 @@ static char *get_chardev(Object *obj, Error **errp)<br> return NULL;<br> }<br> <br> -static void vhost_user_backend_init(Object *obj)<br> +static void vhost_user_backend_class_init(ObjectClass *oc, void *data)<br> {<br> - object_property_add_str(obj, "chardev", get_chardev, set_chardev);<br> + object_class_property_add_str(oc, "chardev", get_chardev, set_chardev);<br> }<br> <br> static void vhost_user_backend_finalize(Object *obj)<br> @@ -195,7 +195,7 @@ static const TypeInfo vhost_user_backend_info = {<br> .name = TYPE_VHOST_USER_BACKEND,<br> .parent = TYPE_OBJECT,<br> .instance_size = sizeof(VhostUserBackend),<br> - .instance_init = vhost_user_backend_init,<br> + .class_init = vhost_user_backend_class_init,<br> .instance_finalize = vhost_user_backend_finalize,<br> .class_size = sizeof(VhostUserBackendClass),<br> };<br> -- <br> 2.26.2<br> <br> <br> </blockquote></div><br clear="all"><br>-- <br><div dir="ltr" class="gmail_signature">Marc-André Lureau<br></div></div>
On Mon, 21 Sep 2020 18:10:26 -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> Reviewed-by: Igor Mammedov <imammedo@redhat.com> > --- > Cc: "Michael S. Tsirkin" <mst@redhat.com> > Cc: qemu-devel@nongnu.org > --- > backends/vhost-user.c | 6 +++--- > 1 file changed, 3 insertions(+), 3 deletions(-) > > diff --git a/backends/vhost-user.c b/backends/vhost-user.c > index 9e6e1985465..858fdeae26c 100644 > --- a/backends/vhost-user.c > +++ b/backends/vhost-user.c > @@ -175,9 +175,9 @@ static char *get_chardev(Object *obj, Error **errp) > return NULL; > } > > -static void vhost_user_backend_init(Object *obj) > +static void vhost_user_backend_class_init(ObjectClass *oc, void *data) > { > - object_property_add_str(obj, "chardev", get_chardev, set_chardev); > + object_class_property_add_str(oc, "chardev", get_chardev, set_chardev); > } > > static void vhost_user_backend_finalize(Object *obj) > @@ -195,7 +195,7 @@ static const TypeInfo vhost_user_backend_info = { > .name = TYPE_VHOST_USER_BACKEND, > .parent = TYPE_OBJECT, > .instance_size = sizeof(VhostUserBackend), > - .instance_init = vhost_user_backend_init, > + .class_init = vhost_user_backend_class_init, > .instance_finalize = vhost_user_backend_finalize, > .class_size = sizeof(VhostUserBackendClass), > };
On Mon, Sep 21, 2020 at 06:10:26PM -0400, Eduardo Habkost 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> Reviewed-by: Michael S. Tsirkin <mst@redhat.com> > --- > Cc: "Michael S. Tsirkin" <mst@redhat.com> > Cc: qemu-devel@nongnu.org > --- > backends/vhost-user.c | 6 +++--- > 1 file changed, 3 insertions(+), 3 deletions(-) > > diff --git a/backends/vhost-user.c b/backends/vhost-user.c > index 9e6e1985465..858fdeae26c 100644 > --- a/backends/vhost-user.c > +++ b/backends/vhost-user.c > @@ -175,9 +175,9 @@ static char *get_chardev(Object *obj, Error **errp) > return NULL; > } > > -static void vhost_user_backend_init(Object *obj) > +static void vhost_user_backend_class_init(ObjectClass *oc, void *data) > { > - object_property_add_str(obj, "chardev", get_chardev, set_chardev); > + object_class_property_add_str(oc, "chardev", get_chardev, set_chardev); > } > > static void vhost_user_backend_finalize(Object *obj) > @@ -195,7 +195,7 @@ static const TypeInfo vhost_user_backend_info = { > .name = TYPE_VHOST_USER_BACKEND, > .parent = TYPE_OBJECT, > .instance_size = sizeof(VhostUserBackend), > - .instance_init = vhost_user_backend_init, > + .class_init = vhost_user_backend_class_init, > .instance_finalize = vhost_user_backend_finalize, > .class_size = sizeof(VhostUserBackendClass), > }; > -- > 2.26.2
diff --git a/backends/vhost-user.c b/backends/vhost-user.c index 9e6e1985465..858fdeae26c 100644 --- a/backends/vhost-user.c +++ b/backends/vhost-user.c @@ -175,9 +175,9 @@ static char *get_chardev(Object *obj, Error **errp) return NULL; } -static void vhost_user_backend_init(Object *obj) +static void vhost_user_backend_class_init(ObjectClass *oc, void *data) { - object_property_add_str(obj, "chardev", get_chardev, set_chardev); + object_class_property_add_str(oc, "chardev", get_chardev, set_chardev); } static void vhost_user_backend_finalize(Object *obj) @@ -195,7 +195,7 @@ static const TypeInfo vhost_user_backend_info = { .name = TYPE_VHOST_USER_BACKEND, .parent = TYPE_OBJECT, .instance_size = sizeof(VhostUserBackend), - .instance_init = vhost_user_backend_init, + .class_init = vhost_user_backend_class_init, .instance_finalize = vhost_user_backend_finalize, .class_size = sizeof(VhostUserBackendClass), };
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: "Michael S. Tsirkin" <mst@redhat.com> Cc: qemu-devel@nongnu.org --- backends/vhost-user.c | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-)