qemu-devel.nongnu.org archive mirror
 help / color / mirror / Atom feed
From: Luiz Capitulino <lcapitulino@redhat.com>
To: qemu-devel@nongnu.org
Cc: aliguori@us.ibm.com, mdroth@linux.vnet.ibm.com
Subject: [Qemu-devel] [PATCH 15/16] qapi: Convert migrate_set_downtime
Date: Mon,  5 Dec 2011 18:00:25 -0200	[thread overview]
Message-ID: <1323115226-16817-16-git-send-email-lcapitulino@redhat.com> (raw)
In-Reply-To: <1323115226-16817-1-git-send-email-lcapitulino@redhat.com>

Signed-off-by: Luiz Capitulino <lcapitulino@redhat.com>
---
 hmp-commands.hx  |    3 +--
 hmp.c            |    6 ++++++
 hmp.h            |    1 +
 migration.c      |   13 ++++---------
 migration.h      |    3 ---
 qapi-schema.json |   13 +++++++++++++
 qmp-commands.hx  |    5 +----
 7 files changed, 26 insertions(+), 18 deletions(-)

diff --git a/hmp-commands.hx b/hmp-commands.hx
index e48c2ca..6ba694d 100644
--- a/hmp-commands.hx
+++ b/hmp-commands.hx
@@ -801,8 +801,7 @@ ETEXI
         .args_type  = "value:T",
         .params     = "value",
         .help       = "set maximum tolerated downtime (in seconds) for migrations",
-        .user_print = monitor_user_noop,
-        .mhandler.cmd_new = do_migrate_set_downtime,
+        .mhandler.cmd = hmp_migrate_set_downtime,
     },
 
 STEXI
diff --git a/hmp.c b/hmp.c
index 92bb08f..04e6b73 100644
--- a/hmp.c
+++ b/hmp.c
@@ -667,3 +667,9 @@ void hmp_migrate_cancel(Monitor *mon, const QDict *qdict)
 {
     qmp_migrate_cancel(NULL);
 }
+
+void hmp_migrate_set_downtime(Monitor *mon, const QDict *qdict)
+{
+    double value = qdict_get_double(qdict, "value");
+    qmp_migrate_set_downtime(value, NULL);
+}
diff --git a/hmp.h b/hmp.h
index 2b0c1e4..9182622 100644
--- a/hmp.h
+++ b/hmp.h
@@ -47,5 +47,6 @@ void hmp_balloon(Monitor *mon, const QDict *qdict);
 void hmp_block_resize(Monitor *mon, const QDict *qdict);
 void hmp_snapshot_blkdev(Monitor *mon, const QDict *qdict);
 void hmp_migrate_cancel(Monitor *mon, const QDict *qdict);
+void hmp_migrate_set_downtime(Monitor *mon, const QDict *qdict);
 
 #endif
diff --git a/migration.c b/migration.c
index fa603d6..a563162 100644
--- a/migration.c
+++ b/migration.c
@@ -490,14 +490,9 @@ int do_migrate_set_speed(Monitor *mon, const QDict *qdict, QObject **ret_data)
     return 0;
 }
 
-int do_migrate_set_downtime(Monitor *mon, const QDict *qdict,
-                            QObject **ret_data)
+void qmp_migrate_set_downtime(double value, Error **errp)
 {
-    double d;
-
-    d = qdict_get_double(qdict, "value") * 1e9;
-    d = MAX(0, MIN(UINT64_MAX, d));
-    max_downtime = (uint64_t)d;
-
-    return 0;
+    value *= 1e9;
+    value = MAX(0, MIN(UINT64_MAX, value));
+    max_downtime = (uint64_t)value;
 }
diff --git a/migration.h b/migration.h
index ff2e40b..539f8f1 100644
--- a/migration.h
+++ b/migration.h
@@ -46,9 +46,6 @@ int do_migrate_set_speed(Monitor *mon, const QDict *qdict, QObject **ret_data);
 
 uint64_t migrate_max_downtime(void);
 
-int do_migrate_set_downtime(Monitor *mon, const QDict *qdict,
-                            QObject **ret_data);
-
 void do_info_migrate_print(Monitor *mon, const QObject *data);
 
 void do_info_migrate(Monitor *mon, QObject **ret_data);
diff --git a/qapi-schema.json b/qapi-schema.json
index d638f12..d9b9fa1 100644
--- a/qapi-schema.json
+++ b/qapi-schema.json
@@ -1140,3 +1140,16 @@
 # Since: 0.14.0
 ##
 { 'command': 'migrate_cancel' }
+
+##
+# @migrate_set_downtime
+#
+# Set maximum tolerated downtime for migration.
+#
+# @value: maximum downtime in seconds
+#
+# Returns: nothing on success
+#
+# Since: 0.14.0
+##
+{ 'command': 'migrate_set_downtime', 'data': {'value': 'number'} }
diff --git a/qmp-commands.hx b/qmp-commands.hx
index 5eb4b76..b4cadeb 100644
--- a/qmp-commands.hx
+++ b/qmp-commands.hx
@@ -518,10 +518,7 @@ EQMP
     {
         .name       = "migrate_set_downtime",
         .args_type  = "value:T",
-        .params     = "value",
-        .help       = "set maximum tolerated downtime (in seconds) for migrations",
-        .user_print = monitor_user_noop,
-        .mhandler.cmd_new = do_migrate_set_downtime,
+        .mhandler.cmd_new = qmp_marshal_input_migrate_set_downtime,
     },
 
 SQMP
-- 
1.7.8.dirty

  parent reply	other threads:[~2011-12-05 20:01 UTC|newest]

Thread overview: 18+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2011-12-05 20:00 [Qemu-devel] [PATCH v2 00/16]: QAPI conversions round 3 Luiz Capitulino
2011-12-05 20:00 ` [Qemu-devel] [PATCH 01/16] qapi: Complete system_powerdown conversion Luiz Capitulino
2011-12-05 20:00 ` [Qemu-devel] [PATCH 02/16] console: Drop unused prototypes Luiz Capitulino
2011-12-05 20:00 ` [Qemu-devel] [PATCH 03/16] QError: Introduce QERR_IO_ERROR Luiz Capitulino
2011-12-05 20:00 ` [Qemu-devel] [PATCH 04/16] qapi: Convert memsave Luiz Capitulino
2011-12-05 20:00 ` [Qemu-devel] [PATCH 05/16] qapi: Convert pmemsave Luiz Capitulino
2011-12-05 20:00 ` [Qemu-devel] [PATCH 06/16] qapi: Convert cont Luiz Capitulino
2011-12-05 20:00 ` [Qemu-devel] [PATCH 07/16] qapi: Convert inject-nmi Luiz Capitulino
2011-12-05 20:00 ` [Qemu-devel] [PATCH 08/16] qapi: Convert set_link Luiz Capitulino
2011-12-05 20:00 ` [Qemu-devel] [PATCH 09/16] qapi: Convert block_passwd Luiz Capitulino
2011-12-05 20:00 ` [Qemu-devel] [PATCH 10/16] qapi: Convert balloon Luiz Capitulino
2011-12-05 20:00 ` [Qemu-devel] [PATCH 11/16] qapi: Convert block_resize Luiz Capitulino
2011-12-05 20:00 ` [Qemu-devel] [PATCH 12/16] qapi: Convert blockdev_snapshot_sync Luiz Capitulino
2011-12-05 20:00 ` [Qemu-devel] [PATCH 13/16] qapi: Convert human-monitor-command Luiz Capitulino
2011-12-05 20:00 ` [Qemu-devel] [PATCH 14/16] qapi: Convert migrate_cancel Luiz Capitulino
2011-12-05 20:00 ` Luiz Capitulino [this message]
2011-12-05 20:00 ` [Qemu-devel] [PATCH 16/16] qapi: Convert migrate_set_speed Luiz Capitulino
  -- strict thread matches above, loose matches on Subject: below --
2011-11-28 18:11 [Qemu-devel] [PATCH 1.1 v1 00/16]: QAPI conversions round 3 Luiz Capitulino
2011-11-28 18:11 ` [Qemu-devel] [PATCH 15/16] qapi: Convert migrate_set_downtime Luiz Capitulino

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=1323115226-16817-16-git-send-email-lcapitulino@redhat.com \
    --to=lcapitulino@redhat.com \
    --cc=aliguori@us.ibm.com \
    --cc=mdroth@linux.vnet.ibm.com \
    --cc=qemu-devel@nongnu.org \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).