|
From: | Zhang Chen |
Subject: | Re: [Qemu-devel] [PATCH for-2.9 V4 2/2] Add a new qmp command to do checkpoint, get replication error |
Date: | Wed, 21 Dec 2016 15:10:02 +0800 |
User-agent: | Mozilla/5.0 (X11; Linux x86_64; rv:45.0) Gecko/20100101 Thunderbird/45.4.0 |
On 12/21/2016 08:18 AM, Stefano Stabellini wrote:
On Fri, 16 Dec 2016, Zhang Chen wrote:We can call this qmp command to do checkpoint outside of qemu. Like Xen colo need this function. Signed-off-by: Zhang Chen <address@hidden> Signed-off-by: Wen Congyang <address@hidden> --- docs/qmp-commands.txt | 24 ++++++++++++++++++++++++ migration/colo.c | 10 ++++++++++ qapi-schema.json | 22 ++++++++++++++++++++++ 3 files changed, 56 insertions(+) diff --git a/docs/qmp-commands.txt b/docs/qmp-commands.txt index a8e9eb6..093b7eb 100644 --- a/docs/qmp-commands.txt +++ b/docs/qmp-commands.txt @@ -450,6 +450,30 @@ Example: "arguments": {"enable": true, "primary": false} } <- { "return": {} }+xen-get-replication-error+------------------------- + +Get replication error that occurs when vm is running. + +Arguments: None. + +Example: + +-> { "execute": "xen-get-replication-error" } +<- { "return": {} } + +xen-do-checkpoint +----------------- + +Do checkpoint. + +Arguments: None. + +Example: + +-> { "execute": "xen-do-checkpoint" } +<- { "return": {} }I don't know much about QMP, but shouldn't these two functions return a success or failure at least? Especially xen-get-replication-error? How does xen-get-replication-error actually return the error? Please also write this info on the description of the commands (docs/qmp-commands.txt, qapi-schema.json).
OK, I will add more description of the commands in next version. Thanks Zhang Chen
migrate -------diff --git a/migration/colo.c b/migration/colo.cindex 6fc2ade..1e962f6 100644 --- a/migration/colo.c +++ b/migration/colo.c @@ -127,6 +127,16 @@ void qmp_xen_set_replication(bool enable, bool primary, } }+void qmp_xen_get_replication_error(Error **errp)+ { + replication_get_error_all(errp); + } + +void qmp_xen_do_checkpoint(Error **errp) + { + replication_do_checkpoint_all(errp); + } + static void colo_send_message(QEMUFile *f, COLOMessage msg, Error **errp) { diff --git a/qapi-schema.json b/qapi-schema.json index 78802f4..79fe4dd 100644 --- a/qapi-schema.json +++ b/qapi-schema.json @@ -4695,6 +4695,28 @@ 'data': { 'enable': 'bool', 'primary': 'bool', '*failover' : 'bool' } }##+# @xen-get-replication-error +# +# Get replication error that occurs when the vm is running. +# +# Returns: nothing. +# +# Since: 2.9 +## +{ 'command': 'xen-get-replication-error' } + +## +# @xen-do-checkpoint +# +# Do checkpoint. +# +# Returns: nothing. +# +# Since: 2.9 +## +{ 'command': 'xen-do-checkpoint' } + +## # @GICCapability: # # The struct describes capability for a specific GIC (Generic -- 2.7.4.
-- Thanks Zhang Chen
[Prev in Thread] | Current Thread | [Next in Thread] |