diff mbox

hw/s390x: Mark the "sclpquiesce" device with user_creatable = false

Message ID 1507193105-15627-1-git-send-email-thuth@redhat.com (mailing list archive)
State New, archived
Headers show

Commit Message

Thomas Huth Oct. 5, 2017, 8:45 a.m. UTC
The "sclpquiesce" device is just an internal device that should not be
created by the user directly. Though it currently does not seem to cause
any obvious trouble when the user instantiates an additional device, let's
better mark it with user_creatable = false to avoid unexpected behavior,
e.g. because the quiesce notifier gets registered multiple times.

Signed-off-by: Thomas Huth <thuth@redhat.com>
---
 hw/s390x/sclpquiesce.c | 7 ++++++-
 1 file changed, 6 insertions(+), 1 deletion(-)

Comments

Halil Pasic Oct. 5, 2017, 9 a.m. UTC | #1
On 10/05/2017 10:45 AM, Thomas Huth wrote:
> The "sclpquiesce" device is just an internal device that should not be
> created by the user directly. Though it currently does not seem to cause
> any obvious trouble when the user instantiates an additional device, let's
> better mark it with user_creatable = false to avoid unexpected behavior,
> e.g. because the quiesce notifier gets registered multiple times.
> 
> Signed-off-by: Thomas Huth <thuth@redhat.com>

Reviewed-by: Halil Pasic <pasic@linux.vnet.ibm.com>

> ---
>  hw/s390x/sclpquiesce.c | 7 ++++++-
>  1 file changed, 6 insertions(+), 1 deletion(-)
> 
> diff --git a/hw/s390x/sclpquiesce.c b/hw/s390x/sclpquiesce.c
> index 762cb18..0241643 100644
> --- a/hw/s390x/sclpquiesce.c
> +++ b/hw/s390x/sclpquiesce.c
> @@ -118,8 +118,13 @@ static void quiesce_class_init(ObjectClass *klass, void *data)
>      dc->reset = quiesce_reset;
>      dc->vmsd = &vmstate_sclpquiesce;
>      set_bit(DEVICE_CATEGORY_MISC, dc->categories);
> -    k->init = quiesce_init;
> +    /*
> +     * Reason: This is just an internal device - the notifier should
> +     * not be registered multiple times in quiesce_init()
> +     */
> +    dc->user_creatable = false;
> 
> +    k->init = quiesce_init;
>      k->get_send_mask = send_mask;
>      k->get_receive_mask = receive_mask;
>      k->can_handle_event = can_handle_event;
>
Claudio Imbrenda Oct. 5, 2017, 10:26 a.m. UTC | #2
On Thu,  5 Oct 2017 10:45:05 +0200
Thomas Huth <thuth@redhat.com> wrote:

> The "sclpquiesce" device is just an internal device that should not be
> created by the user directly. Though it currently does not seem to
> cause any obvious trouble when the user instantiates an additional
> device, let's better mark it with user_creatable = false to avoid
> unexpected behavior, e.g. because the quiesce notifier gets
> registered multiple times.
> 
> Signed-off-by: Thomas Huth <thuth@redhat.com>


Reviewed-by: Claudio Imbrenda <imbrenda@linux.vnet.ibm.com>

> ---
>  hw/s390x/sclpquiesce.c | 7 ++++++-
>  1 file changed, 6 insertions(+), 1 deletion(-)
> 
> diff --git a/hw/s390x/sclpquiesce.c b/hw/s390x/sclpquiesce.c
> index 762cb18..0241643 100644
> --- a/hw/s390x/sclpquiesce.c
> +++ b/hw/s390x/sclpquiesce.c
> @@ -118,8 +118,13 @@ static void quiesce_class_init(ObjectClass
> *klass, void *data) dc->reset = quiesce_reset;
>      dc->vmsd = &vmstate_sclpquiesce;
>      set_bit(DEVICE_CATEGORY_MISC, dc->categories);
> -    k->init = quiesce_init;
> +    /*
> +     * Reason: This is just an internal device - the notifier should
> +     * not be registered multiple times in quiesce_init()
> +     */
> +    dc->user_creatable = false;
> 
> +    k->init = quiesce_init;
>      k->get_send_mask = send_mask;
>      k->get_receive_mask = receive_mask;
>      k->can_handle_event = can_handle_event;
Cornelia Huck Oct. 5, 2017, 12:54 p.m. UTC | #3
On Thu,  5 Oct 2017 10:45:05 +0200
Thomas Huth <thuth@redhat.com> wrote:

> The "sclpquiesce" device is just an internal device that should not be
> created by the user directly. Though it currently does not seem to cause
> any obvious trouble when the user instantiates an additional device, let's
> better mark it with user_creatable = false to avoid unexpected behavior,
> e.g. because the quiesce notifier gets registered multiple times.
> 
> Signed-off-by: Thomas Huth <thuth@redhat.com>
> ---
>  hw/s390x/sclpquiesce.c | 7 ++++++-
>  1 file changed, 6 insertions(+), 1 deletion(-)

Thanks, applied.
diff mbox

Patch

diff --git a/hw/s390x/sclpquiesce.c b/hw/s390x/sclpquiesce.c
index 762cb18..0241643 100644
--- a/hw/s390x/sclpquiesce.c
+++ b/hw/s390x/sclpquiesce.c
@@ -118,8 +118,13 @@  static void quiesce_class_init(ObjectClass *klass, void *data)
     dc->reset = quiesce_reset;
     dc->vmsd = &vmstate_sclpquiesce;
     set_bit(DEVICE_CATEGORY_MISC, dc->categories);
-    k->init = quiesce_init;
+    /*
+     * Reason: This is just an internal device - the notifier should
+     * not be registered multiple times in quiesce_init()
+     */
+    dc->user_creatable = false;
 
+    k->init = quiesce_init;
     k->get_send_mask = send_mask;
     k->get_receive_mask = receive_mask;
     k->can_handle_event = can_handle_event;