qemu-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [PATCH v4 3/3] qmp: add new qmp display-reload


From: Markus Armbruster
Subject: Re: [PATCH v4 3/3] qmp: add new qmp display-reload
Date: Tue, 09 Mar 2021 10:35:44 +0100
User-agent: Gnus/5.13 (Gnus v5.13) Emacs/27.1 (gnu/linux)

Sorry for the delay, I missed this one.

Zihao Chang <changzihao1@huawei.com> writes:

> This patch provides a new qmp to reload display configuration
> without restart VM, but only reloading the vnc tls certificates
> is implemented.
> Example:
> {"execute": "display-reload", "arguments":{"vnc-tls-certs": true}}
>
> Signed-off-by: Zihao Chang <changzihao1@huawei.com>
> ---
>  monitor/qmp-cmds.c | 12 ++++++++++++
>  qapi/ui.json       | 32 ++++++++++++++++++++++++++++++++
>  2 files changed, 44 insertions(+)
>
> diff --git a/monitor/qmp-cmds.c b/monitor/qmp-cmds.c
> index c7df8c0ee268..02ac2fdb1a47 100644
> --- a/monitor/qmp-cmds.c
> +++ b/monitor/qmp-cmds.c
> @@ -334,3 +334,15 @@ MemoryInfo *qmp_query_memory_size_summary(Error **errp)
>  
>      return mem_info;
>  }
> +
> +void qmp_display_reload(DisplayReloadInfo *arg, Error **errp)
> +{
> +    Error *local_err = NULL;
> +
> +    if (arg->has_vnc_tls_certs && arg->vnc_tls_certs) {
> +        if (!vnc_display_reload_certs(NULL, &local_err)) {
> +            error_propagate(errp, local_err);
> +            return;
> +        }
> +    }
> +}
> diff --git a/qapi/ui.json b/qapi/ui.json
> index d08d72b43923..922d9ae0772e 100644
> --- a/qapi/ui.json
> +++ b/qapi/ui.json
> @@ -1179,3 +1179,35 @@
>  ##
>  { 'command': 'query-display-options',
>    'returns': 'DisplayOptions' }
> +
> +##
> +# @DisplayReloadInfo:
> +#
> +# The basic information for reload Display configuration
> +#
> +# @vnc-tls-certs: whether to reload tls certs
> +#
> +# Since: 6.0
> +##
> +{ 'struct': 'DisplayReloadInfo',
> +  'data': { '*vnc-tls-certs': 'bool' } }
> +
> +##
> +# @display-reload:
> +#
> +# Reload display configuration
> +#
> +# Returns: Nothing on success
> +#
> +# Since: 6.0
> +#
> +# Example:
> +#
> +# -> { "execute": "display-reload",
> +#      "arguments": { "vnc-tls-certs": true } }
> +# <- { "return": {} }
> +#
> +##
> +{ 'command': 'display-reload',
> +  'data': 'DisplayReloadInfo',
> +  'boxed' : true }

Why 'boxed': true?

What about:

   ##
   # @display-reload:
   #
   # Reload display configuration
   #
   # Returns: Nothing on success
   #
   # Since: 6.0
   #
   # Example:
   #
   # -> { "execute": "display-reload",
   #      "arguments": { "vnc-tls-certs": true } }
   # <- { "return": {} }
   #
   ##
   { 'command': 'display-reload',
     'data': { '*vnc-tls-certs': 'bool' } }




reply via email to

[Prev in Thread] Current Thread [Next in Thread]