[PATCH] monitor/hmp-cmds: don't silently output when running 'migrate_set_downtime' fails

Mao Zhongyi posted 1 patch 4 years ago
Patches applied successfully (tree, apply log)
git fetch https://github.com/patchew-project/qemu tags/patchew/20200327062623.191818-1-maozhongyi@cmss.chinamobile.com
Test docker-mingw@fedora passed
Test docker-quick@centos7 passed
Test checkpatch passed
Test FreeBSD passed
Test asan passed
Maintainers: "Dr. David Alan Gilbert" <dgilbert@redhat.com>
monitor/hmp-cmds.c | 8 +++++++-
1 file changed, 7 insertions(+), 1 deletion(-)
[PATCH] monitor/hmp-cmds: don't silently output when running 'migrate_set_downtime' fails
Posted by Mao Zhongyi 4 years ago
Although 'migrate_set_downtime' has been deprecated and replaced
with 'migrate_set_parameter downtime_limit', it has not been
completely eliminated, possibly due to compatibility with older
versions. I think as long as this old parameter is running, we
should report appropriate message when something goes wrong, not
be silent.

before:
(qemu) migrate_set_downtime -1
(qemu)

after:
(qemu) migrate_set_downtime -1
Error: Parameter 'downtime_limit' expects an integer in the range of 0 to 2000 seconds

Signed-off-by: Mao Zhongyi <maozhongyi@cmss.chinamobile.com>
---
 monitor/hmp-cmds.c | 8 +++++++-
 1 file changed, 7 insertions(+), 1 deletion(-)

diff --git a/monitor/hmp-cmds.c b/monitor/hmp-cmds.c
index 9b94e67879..2a900a528a 100644
--- a/monitor/hmp-cmds.c
+++ b/monitor/hmp-cmds.c
@@ -1181,8 +1181,14 @@ void hmp_migrate_pause(Monitor *mon, const QDict *qdict)
 /* Kept for backwards compatibility */
 void hmp_migrate_set_downtime(Monitor *mon, const QDict *qdict)
 {
+    Error *err = NULL;
+
     double value = qdict_get_double(qdict, "value");
-    qmp_migrate_set_downtime(value, NULL);
+    qmp_migrate_set_downtime(value, &err);
+
+    if (err) {
+        hmp_handle_error(mon, err);
+    }
 }
 
 void hmp_migrate_set_cache_size(Monitor *mon, const QDict *qdict)
-- 
2.17.1




Re: [PATCH] monitor/hmp-cmds: don't silently output when running 'migrate_set_downtime' fails
Posted by Dr. David Alan Gilbert 4 years ago
* Mao Zhongyi (maozhongyi@cmss.chinamobile.com) wrote:
> Although 'migrate_set_downtime' has been deprecated and replaced
> with 'migrate_set_parameter downtime_limit', it has not been
> completely eliminated, possibly due to compatibility with older
> versions. I think as long as this old parameter is running, we
> should report appropriate message when something goes wrong, not
> be silent.
> 
> before:
> (qemu) migrate_set_downtime -1
> (qemu)
> 
> after:
> (qemu) migrate_set_downtime -1
> Error: Parameter 'downtime_limit' expects an integer in the range of 0 to 2000 seconds
> 
> Signed-off-by: Mao Zhongyi <maozhongyi@cmss.chinamobile.com>

Reviewed-by: Dr. David Alan Gilbert <dgilbert@redhat.com>

> ---
>  monitor/hmp-cmds.c | 8 +++++++-
>  1 file changed, 7 insertions(+), 1 deletion(-)
> 
> diff --git a/monitor/hmp-cmds.c b/monitor/hmp-cmds.c
> index 9b94e67879..2a900a528a 100644
> --- a/monitor/hmp-cmds.c
> +++ b/monitor/hmp-cmds.c
> @@ -1181,8 +1181,14 @@ void hmp_migrate_pause(Monitor *mon, const QDict *qdict)
>  /* Kept for backwards compatibility */
>  void hmp_migrate_set_downtime(Monitor *mon, const QDict *qdict)
>  {
> +    Error *err = NULL;
> +
>      double value = qdict_get_double(qdict, "value");
> -    qmp_migrate_set_downtime(value, NULL);
> +    qmp_migrate_set_downtime(value, &err);
> +
> +    if (err) {
> +        hmp_handle_error(mon, err);
> +    }
>  }
>  
>  void hmp_migrate_set_cache_size(Monitor *mon, const QDict *qdict)
> -- 
> 2.17.1
> 
> 
> 
--
Dr. David Alan Gilbert / dgilbert@redhat.com / Manchester, UK