xen-devel.lists.xenproject.org archive mirror
 help / color / mirror / Atom feed
From: Wen Congyang <wency@cn.fujitsu.com>
To: xen devel <xen-devel@lists.xen.org>
Cc: Ian Campbell <Ian.Campbell@citrix.com>,
	Wen Congyang <wency@cn.fujitsu.com>,
	Ian Jackson <Ian.Jackson@eu.citrix.com>,
	Jiang Yunhong <yunhong.jiang@intel.com>,
	Dong Eddie <eddie.dong@intel.com>,
	Yang Hongyang <yanghy@cn.fujitsu.com>,
	Lai Jiangshan <laijs@cn.fujitsu.com>
Subject: [RFC Patch 05/25] rename remus device to checkpoint device
Date: Fri, 18 Jul 2014 19:38:50 +0800	[thread overview]
Message-ID: <1405683551-12579-6-git-send-email-wency@cn.fujitsu.com> (raw)
In-Reply-To: <1405683551-12579-1-git-send-email-wency@cn.fujitsu.com>

This patch is auto generated by the following commands:
1. git mv tools/libxl/libxl_remus_device.c tools/libxl/libxl_checkpoint_device.c
2. perl -pi -e 's/libxl_remus_device/libxl_checkpoint_device/g' tools/libxl/Makefile
3. perl -pi -e 's/libxl__remus_device/libxl__checkpoint_device/g' tools/libxl/*.[ch]
4. perl -pi -e 's/remus_device_checkpoint_api/checkpoint_device_api/g' tools/libxl/*.[ch]
5. perl -pi -e 's/\brds\b/cds/g' tools/libxl/*.[ch]
6. perl -pi -e 's/REMUS_DEVICE/CHECKPOINT_DEVICE/g' tools/libxl/*.[ch] tools/libxl/*.idl
7. perl -pi -e 's/REMUS_DEVOPS/CHECKPOINT_DEVOPS/g' tools/libxl/*.[ch] tools/libxl/*.idl
8. perl -pi -e 's/\bremus\b/checkpoint/g' tools/libxl/libxl_checkpoint_device.[ch]

Signed-off-by: Wen Congyang <wency@cn.fujitsu.com>
---
 tools/libxl/Makefile                               |   2 +-
 tools/libxl/libxl.c                                |  36 +--
 ...xl_remus_device.c => libxl_checkpoint_device.c} | 258 ++++++++++-----------
 tools/libxl/libxl_dom.c                            |  46 ++--
 tools/libxl/libxl_internal.h                       | 102 ++++----
 tools/libxl/libxl_netbuffer.c                      |  80 +++----
 tools/libxl/libxl_nonetbuffer.c                    |  14 +-
 tools/libxl/libxl_remus_disk_drbd.c                |  54 ++---
 tools/libxl/libxl_types.idl                        |   4 +-
 9 files changed, 298 insertions(+), 298 deletions(-)
 rename tools/libxl/{libxl_remus_device.c => libxl_checkpoint_device.c} (49%)

diff --git a/tools/libxl/Makefile b/tools/libxl/Makefile
index ba10ab7..a33497d 100644
--- a/tools/libxl/Makefile
+++ b/tools/libxl/Makefile
@@ -56,7 +56,7 @@ else
 LIBXL_OBJS-y += libxl_nonetbuffer.o
 endif
 
-LIBXL_OBJS-y += libxl_remus_device.o libxl_remus_disk_drbd.o
+LIBXL_OBJS-y += libxl_checkpoint_device.o libxl_remus_disk_drbd.o
 
 LIBXL_OBJS-$(CONFIG_X86) += libxl_cpuid.o libxl_x86.o
 LIBXL_OBJS-$(CONFIG_ARM) += libxl_nocpuid.o libxl_arm.o
diff --git a/tools/libxl/libxl.c b/tools/libxl/libxl.c
index 94087ff..fc60bb1 100644
--- a/tools/libxl/libxl.c
+++ b/tools/libxl/libxl.c
@@ -782,13 +782,13 @@ out:
 }
 
 static void libxl__remus_setup_done(libxl__egc *egc,
-                                    libxl__remus_device_state *rds, int rc);
+                                    libxl__checkpoint_device_state *cds, int rc);
 static void libxl__remus_setup_failed(libxl__egc *egc,
-                                      libxl__remus_device_state *rds, int rc);
+                                      libxl__checkpoint_device_state *cds, int rc);
 static void remus_failover_cb(libxl__egc *egc,
                               libxl__domain_suspend_state *dss, int rc);
 
-static const libxl__remus_device_subkind_ops *remus_ops[] = {
+static const libxl__checkpoint_device_subkind_ops *remus_ops[] = {
     &remus_device_nic,
     &remus_device_drbd_disk,
     NULL,
@@ -823,7 +823,7 @@ int libxl_domain_remus_start(libxl_ctx *ctx, libxl_domain_remus_info *info,
     assert(info);
 
     /* Convenience aliases */
-    libxl__remus_device_state *const rds = &dss->rds;
+    libxl__checkpoint_device_state *const cds = &dss->cds;
 
     if (info->netbuf) {
         if (!libxl__netbuffer_enabled(gc)) {
@@ -841,18 +841,18 @@ int libxl_domain_remus_start(libxl_ctx *ctx, libxl_domain_remus_info *info,
         }
     }
 
-    rds->ao = ao;
-    rds->egc = egc;
-    rds->domid = domid;
-    rds->callback = libxl__remus_setup_done;
-    rds->ops = remus_ops;
+    cds->ao = ao;
+    cds->egc = egc;
+    cds->domid = domid;
+    cds->callback = libxl__remus_setup_done;
+    cds->ops = remus_ops;
     if (info->diskbuf)
-        rds->enabled_device_kinds |= LIBXL__REMUS_DEVICE_DISK;
+        cds->enabled_device_kinds |= LIBXL__CHECKPOINT_DEVICE_DISK;
     if (info->netbuf)
-        rds->enabled_device_kinds |= LIBXL__REMUS_DEVICE_NIC;
+        cds->enabled_device_kinds |= LIBXL__CHECKPOINT_DEVICE_NIC;
 
     /* Point of no return */
-    libxl__remus_devices_setup(egc, rds);
+    libxl__checkpoint_devices_setup(egc, cds);
     return AO_INPROGRESS;
 
  out:
@@ -860,9 +860,9 @@ int libxl_domain_remus_start(libxl_ctx *ctx, libxl_domain_remus_info *info,
 }
 
 static void libxl__remus_setup_done(libxl__egc *egc,
-                                    libxl__remus_device_state *rds, int rc)
+                                    libxl__checkpoint_device_state *cds, int rc)
 {
-    libxl__domain_suspend_state *dss = CONTAINER_OF(rds, *dss, rds);
+    libxl__domain_suspend_state *dss = CONTAINER_OF(cds, *dss, cds);
     STATE_AO_GC(dss->ao);
 
     if (!rc) {
@@ -872,14 +872,14 @@ static void libxl__remus_setup_done(libxl__egc *egc,
 
     LOG(ERROR, "Remus: failed to setup device for guest with domid %u, rc %d",
         dss->domid, rc);
-    rds->callback = libxl__remus_setup_failed;
-    libxl__remus_devices_teardown(egc, rds);
+    cds->callback = libxl__remus_setup_failed;
+    libxl__checkpoint_devices_teardown(egc, cds);
 }
 
 static void libxl__remus_setup_failed(libxl__egc *egc,
-                                      libxl__remus_device_state *rds, int rc)
+                                      libxl__checkpoint_device_state *cds, int rc)
 {
-    libxl__domain_suspend_state *dss = CONTAINER_OF(rds, *dss, rds);
+    libxl__domain_suspend_state *dss = CONTAINER_OF(cds, *dss, cds);
     STATE_AO_GC(dss->ao);
 
     if (rc)
diff --git a/tools/libxl/libxl_remus_device.c b/tools/libxl/libxl_checkpoint_device.c
similarity index 49%
rename from tools/libxl/libxl_remus_device.c
rename to tools/libxl/libxl_checkpoint_device.c
index 2acf3bb..87ee412 100644
--- a/tools/libxl/libxl_remus_device.c
+++ b/tools/libxl/libxl_checkpoint_device.c
@@ -19,13 +19,13 @@
 
 /*----- helper functions -----*/
 
-static int init_device_subkind(libxl__remus_device_state *rds)
+static int init_device_subkind(libxl__checkpoint_device_state *cds)
 {
     int rc;
-    const libxl__remus_device_subkind_ops **ops;
+    const libxl__checkpoint_device_subkind_ops **ops;
 
-    for (ops = rds->ops; *ops; ops++) {
-        rc = (*ops)->init(rds);
+    for (ops = cds->ops; *ops; ops++) {
+        rc = (*ops)->init(cds);
         if (rc) {
             goto out;
         }
@@ -37,17 +37,17 @@ out:
 
 }
 
-static void destroy_device_subkind(libxl__remus_device_state *rds)
+static void destroy_device_subkind(libxl__checkpoint_device_state *cds)
 {
-    const libxl__remus_device_subkind_ops **ops;
+    const libxl__checkpoint_device_subkind_ops **ops;
 
-    for (ops = rds->ops; *ops; ops++)
-        (*ops)->destroy(rds);
+    for (ops = cds->ops; *ops; ops++)
+        (*ops)->destroy(cds);
 }
 
-static bool all_devices_handled(libxl__remus_device_state *rds)
+static bool all_devices_handled(libxl__checkpoint_device_state *cds)
 {
-    return rds->num_devices == (rds->num_nics + rds->num_disks);
+    return cds->num_devices == (cds->num_nics + cds->num_disks);
 }
 
 /*----- setup() and teardown() -----*/
@@ -55,85 +55,85 @@ static bool all_devices_handled(libxl__remus_device_state *rds)
 /* callbacks */
 
 static void device_match_cb(libxl__egc *egc,
-                            libxl__remus_device *dev,
+                            libxl__checkpoint_device *dev,
                             int rc);
 static void device_setup_cb(libxl__egc *egc,
-                            libxl__remus_device *dev,
+                            libxl__checkpoint_device *dev,
                             int rc);
 static void device_teardown_cb(libxl__egc *egc,
-                               libxl__remus_device *dev,
+                               libxl__checkpoint_device *dev,
                                int rc);
 
-/* remus device setup and teardown */
+/* checkpoint device setup and teardown */
 
-static void libxl__remus_device_init(libxl__egc *egc,
-                                     libxl__remus_device_state *rds,
-                                     libxl__remus_device_kind kind,
+static void libxl__checkpoint_device_init(libxl__egc *egc,
+                                     libxl__checkpoint_device_state *cds,
+                                     libxl__checkpoint_device_kind kind,
                                      void *libxl_dev);
-void libxl__remus_devices_setup(libxl__egc *egc, libxl__remus_device_state *rds)
+void libxl__checkpoint_devices_setup(libxl__egc *egc, libxl__checkpoint_device_state *cds)
 {
     int i;
-    STATE_AO_GC(rds->ao);
+    STATE_AO_GC(cds->ao);
 
-    if (!rds->ops[0])
+    if (!cds->ops[0])
         goto out;
 
-    rds->saved_rc = init_device_subkind(rds);
-    if (rds->saved_rc)
+    cds->saved_rc = init_device_subkind(cds);
+    if (cds->saved_rc)
         goto out;
 
-    rds->num_devices = 0;
-    rds->num_nics = 0;
-    rds->num_disks = 0;
+    cds->num_devices = 0;
+    cds->num_nics = 0;
+    cds->num_disks = 0;
 
-    if (rds->enabled_device_kinds & LIBXL__REMUS_DEVICE_NIC)
-        rds->nics = libxl_device_nic_list(CTX, rds->domid, &rds->num_nics);
+    if (cds->enabled_device_kinds & LIBXL__CHECKPOINT_DEVICE_NIC)
+        cds->nics = libxl_device_nic_list(CTX, cds->domid, &cds->num_nics);
 
-    if (rds->enabled_device_kinds & LIBXL__REMUS_DEVICE_NIC)
-        rds->disks = libxl_device_disk_list(CTX, rds->domid, &rds->num_disks);
+    if (cds->enabled_device_kinds & LIBXL__CHECKPOINT_DEVICE_NIC)
+        cds->disks = libxl_device_disk_list(CTX, cds->domid, &cds->num_disks);
 
-    if (rds->num_nics == 0 && rds->num_disks == 0)
+    if (cds->num_nics == 0 && cds->num_disks == 0)
         goto out;
 
-    GCNEW_ARRAY(rds->dev, rds->num_nics + rds->num_disks);
+    GCNEW_ARRAY(cds->dev, cds->num_nics + cds->num_disks);
 
-    for (i = 0; i < rds->num_nics; i++) {
-        libxl__remus_device_init(egc, rds,
-                                 LIBXL__REMUS_DEVICE_NIC, &rds->nics[i]);
+    for (i = 0; i < cds->num_nics; i++) {
+        libxl__checkpoint_device_init(egc, cds,
+                                 LIBXL__CHECKPOINT_DEVICE_NIC, &cds->nics[i]);
     }
 
-    for (i = 0; i < rds->num_disks; i++) {
-        libxl__remus_device_init(egc, rds,
-                                 LIBXL__REMUS_DEVICE_DISK, &rds->disks[i]);
+    for (i = 0; i < cds->num_disks; i++) {
+        libxl__checkpoint_device_init(egc, cds,
+                                 LIBXL__CHECKPOINT_DEVICE_DISK, &cds->disks[i]);
     }
 
     return;
 
 out:
-    rds->callback(egc, rds, rds->saved_rc);
+    cds->callback(egc, cds, cds->saved_rc);
     return;
 }
 
-static void libxl__remus_device_init(libxl__egc *egc,
-                                     libxl__remus_device_state *rds,
-                                     libxl__remus_device_kind kind,
+static void libxl__checkpoint_device_init(libxl__egc *egc,
+                                     libxl__checkpoint_device_state *cds,
+                                     libxl__checkpoint_device_kind kind,
                                      void *libxl_dev)
 {
-    libxl__remus_device *dev = NULL;
+    libxl__checkpoint_device *dev = NULL;
 
-    STATE_AO_GC(rds->ao);
+    STATE_AO_GC(cds->ao);
     GCNEW(dev);
     dev->backend_dev = libxl_dev;
     dev->kind = kind;
-    dev->rds = rds;
+    dev->cds = cds;
 
     libxl__async_exec_init(&dev->aes);
     libxl__ev_child_init(&dev->child);
 
     /* match the ops begin */
     dev->ops_index = 0;
-    dev->ops = rds->ops[dev->ops_index];
-    for (; dev->ops; dev->ops = rds->ops[++dev->ops_index]) {
+    dev->ops = cds->ops[dev->ops_index];
+    for (; dev->ops; dev->ops = cds->ops[++dev->ops_index]) {
         if (dev->ops->kind == dev->kind) {
             if (dev->ops->match) {
                 dev->callback = device_match_cb;
@@ -152,41 +152,41 @@ static void libxl__remus_device_init(libxl__egc *egc,
     }
 
     if (!dev->ops) {
-        rds->num_devices++;
-        rds->saved_rc = ERROR_REMUS_DEVICE_NOT_SUPPORTED;
-        if (all_devices_handled(rds))
-            rds->callback(egc, rds, rds->saved_rc);
+        cds->num_devices++;
+        cds->saved_rc = ERROR_CHECKPOINT_DEVICE_NOT_SUPPORTED;
+        if (all_devices_handled(cds))
+            cds->callback(egc, cds, cds->saved_rc);
     }
 }
 
 static void device_match_cb(libxl__egc *egc,
-                            libxl__remus_device *dev,
+                            libxl__checkpoint_device *dev,
                             int rc)
 {
-    libxl__remus_device_state *const rds = dev->rds;
+    libxl__checkpoint_device_state *const cds = dev->cds;
 
-    STATE_AO_GC(rds->ao);
+    STATE_AO_GC(cds->ao);
 
-    if (rds->saved_rc) {
+    if (cds->saved_rc) {
         /* there's already an error happened, we do not need to continue */
-        rds->num_devices++;
-        if (all_devices_handled(rds))
-            rds->callback(egc, rds, rds->saved_rc);
+        cds->num_devices++;
+        if (all_devices_handled(cds))
+            cds->callback(egc, cds, cds->saved_rc);
         return;
     }
 
     if (rc) {
         /* the ops does not match, try next ops */
-        dev->ops = rds->ops[++dev->ops_index];
-        if (!dev->ops || rc != ERROR_REMUS_DEVOPS_NOT_MATCH) {
+        dev->ops = cds->ops[++dev->ops_index];
+        if (!dev->ops || rc != ERROR_CHECKPOINT_DEVOPS_NOT_MATCH) {
             /* the device can not be matched */
-            rds->num_devices++;
-            rds->saved_rc = ERROR_REMUS_DEVICE_NOT_SUPPORTED;
-            if (all_devices_handled(rds))
-                rds->callback(egc, rds, rds->saved_rc);
+            cds->num_devices++;
+            cds->saved_rc = ERROR_CHECKPOINT_DEVICE_NOT_SUPPORTED;
+            if (all_devices_handled(cds))
+                cds->callback(egc, cds, cds->saved_rc);
             return;
         }
-        for ( ; dev->ops; dev->ops = rds->ops[++dev->ops_index]) {
+        for ( ; dev->ops; dev->ops = cds->ops[++dev->ops_index]) {
             if (dev->ops->kind == dev->kind) {
                 /*
                  * we have entered match process, that means this *kind* of
@@ -205,15 +205,15 @@ static void device_match_cb(libxl__egc *egc,
 }
 
 static void device_setup_cb(libxl__egc *egc,
-                            libxl__remus_device *dev,
+                            libxl__checkpoint_device *dev,
                             int rc)
 {
     /* Convenience aliases */
-    libxl__remus_device_state *const rds = dev->rds;
+    libxl__checkpoint_device_state *const cds = dev->cds;
 
-    STATE_AO_GC(rds->ao);
+    STATE_AO_GC(cds->ao);
 
-    rds->num_devices++;
+    cds->num_devices++;
     /*
      * the netbuf script was designed as below:
      * 1. when setup failed, the script won't teardown the device itself.
@@ -222,36 +222,36 @@ static void device_setup_cb(libxl__egc *egc,
      * we add devices that have been set up to the array no matter
      * the setup process succeed or failed because we need to ensure
      * the device been teardown while setup failed. If any of the
-     * device setup failed, we will quit remus, but before we exit,
+     * device setup failed, we will quit checkpoint, but before we exit,
      * we will teardown the devices that have been added to **dev
      */
-    rds->dev[rds->num_set_up++] = dev;
+    cds->dev[cds->num_set_up++] = dev;
     /* we preserve the first error that happened */
-    if (rc && !rds->saved_rc)
-        rds->saved_rc = rc;
+    if (rc && !cds->saved_rc)
+        cds->saved_rc = rc;
 
-    if (all_devices_handled(rds))
-        rds->callback(egc, rds, rds->saved_rc);
+    if (all_devices_handled(cds))
+        cds->callback(egc, cds, cds->saved_rc);
 }
 
-void libxl__remus_devices_teardown(libxl__egc *egc, libxl__remus_device_state *rds)
+void libxl__checkpoint_devices_teardown(libxl__egc *egc, libxl__checkpoint_device_state *cds)
 {
     int i, num_set_up;
-    libxl__remus_device *dev;
+    libxl__checkpoint_device *dev;
 
-    STATE_AO_GC(rds->ao);
+    STATE_AO_GC(cds->ao);
 
-    rds->saved_rc = 0;
+    cds->saved_rc = 0;
 
-    if (rds->num_set_up == 0) {
-        destroy_device_subkind(rds);
+    if (cds->num_set_up == 0) {
+        destroy_device_subkind(cds);
         goto out;
     }
 
-    /* we will decrease rds->num_set_up in the teardown callback */
-    num_set_up = rds->num_set_up;
+    /* we will decrease cds->num_set_up in the teardown callback */
+    num_set_up = cds->num_set_up;
     for (i = 0; i < num_set_up; i++) {
-        dev = rds->dev[i];
+        dev = cds->dev[i];
         dev->callback = device_teardown_cb;
         dev->ops->teardown(dev);
     }
@@ -259,43 +259,43 @@ void libxl__remus_devices_teardown(libxl__egc *egc, libxl__remus_device_state *r
     return;
 
 out:
-    rds->callback(egc, rds, rds->saved_rc);
+    cds->callback(egc, cds, cds->saved_rc);
     return;
 }
 
 static void device_teardown_cb(libxl__egc *egc,
-                               libxl__remus_device *dev,
+                               libxl__checkpoint_device *dev,
                                int rc)
 {
     int i;
-    libxl__remus_device_state *const rds = dev->rds;
+    libxl__checkpoint_device_state *const cds = dev->cds;
 
-    STATE_AO_GC(rds->ao);
+    STATE_AO_GC(cds->ao);
 
     /* we preserve the first error that happened */
-    if (rc && !rds->saved_rc)
-        rds->saved_rc = rc;
+    if (rc && !cds->saved_rc)
+        cds->saved_rc = rc;
 
     /* ignore teardown errors to teardown as many devs as possible*/
-    rds->num_set_up--;
+    cds->num_set_up--;
 
-    if (rds->num_set_up == 0) {
+    if (cds->num_set_up == 0) {
         /* clean nic */
-        for (i = 0; i < rds->num_nics; i++)
-            libxl_device_nic_dispose(&rds->nics[i]);
-        free(rds->nics);
-        rds->nics = NULL;
-        rds->num_nics = 0;
+        for (i = 0; i < cds->num_nics; i++)
+            libxl_device_nic_dispose(&cds->nics[i]);
+        free(cds->nics);
+        cds->nics = NULL;
+        cds->num_nics = 0;
 
         /* clean disk */
-        for (i = 0; i < rds->num_disks; i++)
-            libxl_device_disk_dispose(&rds->disks[i]);
-        free(rds->disks);
-        rds->disks = NULL;
-        rds->num_disks = 0;
-
-        destroy_device_subkind(rds);
-        rds->callback(egc, rds, rds->saved_rc);
+        for (i = 0; i < cds->num_disks; i++)
+            libxl_device_disk_dispose(&cds->disks[i]);
+        free(cds->disks);
+        cds->disks = NULL;
+        cds->num_disks = 0;
+
+        destroy_device_subkind(cds);
+        cds->callback(egc, cds, cds->saved_rc);
     }
 }
 
@@ -304,64 +304,64 @@ static void device_teardown_cb(libxl__egc *egc,
 /* callbacks */
 
 static void device_checkpoint_cb(libxl__egc *egc,
-                                 libxl__remus_device *dev,
+                                 libxl__checkpoint_device *dev,
                                  int rc);
 
 /* API implementations */
 
-#define define_remus_device_checkpoint_api(api)                             \
-void libxl__remus_devices_##api(libxl__egc *egc,                            \
-                                libxl__remus_device_state *rds)             \
+#define define_checkpoint_device_api(api)                             \
+void libxl__checkpoint_devices_##api(libxl__egc *egc,                            \
+                                libxl__checkpoint_device_state *cds)             \
 {                                                                           \
     int i;                                                                  \
-    libxl__remus_device *dev;                                               \
+    libxl__checkpoint_device *dev;                                               \
                                                                             \
-    STATE_AO_GC(rds->ao);                                                   \
+    STATE_AO_GC(cds->ao);                                                   \
                                                                             \
-    rds->num_devices = 0;                                                   \
-    rds->saved_rc = 0;                                                      \
+    cds->num_devices = 0;                                                   \
+    cds->saved_rc = 0;                                                      \
                                                                             \
-    if (rds->num_set_up == 0)                                               \
+    if (cds->num_set_up == 0)                                               \
         goto out;                                                           \
                                                                             \
-    for (i = 0; i < rds->num_set_up; i++) {                                 \
-        dev = rds->dev[i];                                                  \
+    for (i = 0; i < cds->num_set_up; i++) {                                 \
+        dev = cds->dev[i];                                                  \
         dev->callback = device_checkpoint_cb;                               \
         if (dev->ops->api) {                                                \
             dev->ops->api(dev);                                             \
         } else {                                                            \
-            rds->num_devices++;                                             \
-            if (rds->num_devices == rds->num_set_up)                        \
-                rds->callback(egc, rds, rds->saved_rc);                     \
+            cds->num_devices++;                                             \
+            if (cds->num_devices == cds->num_set_up)                        \
+                cds->callback(egc, cds, cds->saved_rc);                     \
         }                                                                   \
     }                                                                       \
                                                                             \
     return;                                                                 \
                                                                             \
 out:                                                                        \
-    rds->callback(egc, rds, rds->saved_rc);                                 \
+    cds->callback(egc, cds, cds->saved_rc);                                 \
 }
 
-define_remus_device_checkpoint_api(postsuspend);
+define_checkpoint_device_api(postsuspend);
 
-define_remus_device_checkpoint_api(preresume);
+define_checkpoint_device_api(preresume);
 
-define_remus_device_checkpoint_api(commit);
+define_checkpoint_device_api(commit);
 
 static void device_checkpoint_cb(libxl__egc *egc,
-                                 libxl__remus_device *dev,
+                                 libxl__checkpoint_device *dev,
                                  int rc)
 {
     /* Convenience aliases */
-    libxl__remus_device_state *const rds = dev->rds;
+    libxl__checkpoint_device_state *const cds = dev->cds;
 
-    STATE_AO_GC(rds->ao);
+    STATE_AO_GC(cds->ao);
 
-    rds->num_devices++;
+    cds->num_devices++;
 
     if (rc)
-        rds->saved_rc = ERROR_FAIL;
+        cds->saved_rc = ERROR_FAIL;
 
-    if (rds->num_devices == rds->num_set_up)
-        rds->callback(egc, rds, rds->saved_rc);
+    if (cds->num_devices == cds->num_set_up)
+        cds->callback(egc, cds, cds->saved_rc);
 }
diff --git a/tools/libxl/libxl_dom.c b/tools/libxl/libxl_dom.c
index 6eabd4c..cf79b74 100644
--- a/tools/libxl/libxl_dom.c
+++ b/tools/libxl/libxl_dom.c
@@ -1462,10 +1462,10 @@ static void domain_suspend_callback_common_done(libxl__egc *egc,
 static void remus_domain_suspend_callback_common_done(libxl__egc *egc,
                                 libxl__domain_suspend_state *dss, int ok);
 static void remus_device_postsuspend_cb(libxl__egc *egc,
-                                        libxl__remus_device_state *rds,
+                                        libxl__checkpoint_device_state *cds,
                                         int rc);
 static void remus_device_preresume_cb(libxl__egc *egc,
-                                      libxl__remus_device_state *rds,
+                                      libxl__checkpoint_device_state *cds,
                                       int rc);
 
 static void libxl__remus_domain_suspend_callback(void *data)
@@ -1484,9 +1484,9 @@ static void remus_domain_suspend_callback_common_done(libxl__egc *egc,
     if (!ok)
         goto out;
 
-    libxl__remus_device_state *const rds = &dss->rds;
-    rds->callback = remus_device_postsuspend_cb;
-    libxl__remus_devices_postsuspend(egc, rds);
+    libxl__checkpoint_device_state *const cds = &dss->cds;
+    cds->callback = remus_device_postsuspend_cb;
+    libxl__checkpoint_devices_postsuspend(egc, cds);
     return;
 
 out:
@@ -1494,11 +1494,11 @@ out:
 }
 
 static void remus_device_postsuspend_cb(libxl__egc *egc,
-                                        libxl__remus_device_state *rds,
+                                        libxl__checkpoint_device_state *cds,
                                         int rc)
 {
     int ok = 0;
-    libxl__domain_suspend_state *dss = CONTAINER_OF(rds, *dss, rds);
+    libxl__domain_suspend_state *dss = CONTAINER_OF(cds, *dss, cds);
 
     if (!rc)
         ok = 1;
@@ -1512,17 +1512,17 @@ static void libxl__remus_domain_resume_callback(void *data)
     libxl__domain_suspend_state *dss = CONTAINER_OF(shs, *dss, shs);
     STATE_AO_GC(dss->ao);
 
-    libxl__remus_device_state *const rds = &dss->rds;
-    rds->callback = remus_device_preresume_cb;
-    libxl__remus_devices_preresume(egc, rds);
+    libxl__checkpoint_device_state *const cds = &dss->cds;
+    cds->callback = remus_device_preresume_cb;
+    libxl__checkpoint_devices_preresume(egc, cds);
 }
 
 static void remus_device_preresume_cb(libxl__egc *egc,
-                                      libxl__remus_device_state *rds,
+                                      libxl__checkpoint_device_state *cds,
                                       int rc)
 {
     int ok = 0;
-    libxl__domain_suspend_state *dss = CONTAINER_OF(rds, *dss, rds);
+    libxl__domain_suspend_state *dss = CONTAINER_OF(cds, *dss, cds);
     STATE_AO_GC(dss->ao);
 
     if (!rc) {
@@ -1538,7 +1538,7 @@ static void remus_device_preresume_cb(libxl__egc *egc,
 static void remus_checkpoint_dm_saved(libxl__egc *egc,
                                       libxl__domain_suspend_state *dss, int rc);
 static void remus_device_commit_cb(libxl__egc *egc,
-                                   libxl__remus_device_state *rds,
+                                   libxl__checkpoint_device_state *cds,
                                    int rc);
 static void remus_next_checkpoint(libxl__egc *egc, libxl__ev_time *ev,
                                   const struct timeval *requested_abs);
@@ -1562,7 +1562,7 @@ static void remus_checkpoint_dm_saved(libxl__egc *egc,
                                       libxl__domain_suspend_state *dss, int rc)
 {
     /* Convenience aliases */
-    libxl__remus_device_state *const rds = &dss->rds;
+    libxl__checkpoint_device_state *const cds = &dss->cds;
 
     STATE_AO_GC(dss->ao);
 
@@ -1571,8 +1571,8 @@ static void remus_checkpoint_dm_saved(libxl__egc *egc,
         goto out;
     }
 
-    rds->callback = remus_device_commit_cb;
-    libxl__remus_devices_commit(egc, rds);
+    cds->callback = remus_device_commit_cb;
+    libxl__checkpoint_devices_commit(egc, cds);
 
     return;
 
@@ -1581,10 +1581,10 @@ out:
 }
 
 static void remus_device_commit_cb(libxl__egc *egc,
-                                   libxl__remus_device_state *rds,
+                                   libxl__checkpoint_device_state *cds,
                                    int rc)
 {
-    libxl__domain_suspend_state *dss = CONTAINER_OF(rds, *dss, rds);
+    libxl__domain_suspend_state *dss = CONTAINER_OF(cds, *dss, cds);
 
     STATE_AO_GC(dss->ao);
 
@@ -1833,7 +1833,7 @@ static void save_device_model_datacopier_done(libxl__egc *egc,
 }
 
 static void libxl__remus_teardown_done(libxl__egc *egc,
-                                       libxl__remus_device_state *rds,
+                                       libxl__checkpoint_device_state *cds,
                                        int rc);
 static void domain_suspend_done(libxl__egc *egc,
                         libxl__domain_suspend_state *dss, int rc)
@@ -1858,8 +1858,8 @@ static void domain_suspend_done(libxl__egc *egc,
          */
         LOGE(WARN, "Domain suspend terminated with rc %d, \
              teardown Remus devices...", rc);
-        dss->rds.callback = libxl__remus_teardown_done;
-        libxl__remus_devices_teardown(egc, &dss->rds);
+        dss->cds.callback = libxl__remus_teardown_done;
+        libxl__checkpoint_devices_teardown(egc, &dss->cds);
         return;
     }
 
@@ -1867,10 +1867,10 @@ static void domain_suspend_done(libxl__egc *egc,
 }
 
 static void libxl__remus_teardown_done(libxl__egc *egc,
-                                       libxl__remus_device_state *rds,
+                                       libxl__checkpoint_device_state *cds,
                                        int rc)
 {
-    libxl__domain_suspend_state *dss = CONTAINER_OF(rds, *dss, rds);
+    libxl__domain_suspend_state *dss = CONTAINER_OF(cds, *dss, cds);
     STATE_AO_GC(dss->ao);
 
     if (rc)
diff --git a/tools/libxl/libxl_internal.h b/tools/libxl/libxl_internal.h
index e327604..f18503e 100644
--- a/tools/libxl/libxl_internal.h
+++ b/tools/libxl/libxl_internal.h
@@ -2478,13 +2478,13 @@ typedef struct libxl__save_helper_state {
 /*----- remus device related state structure -----*/
 /* remus device is an abstract layer of remus devices(nic, disk,
  * etc).It provides the following APIs for libxl:
- *   >libxl__remus_devices_setup
+ *   >libxl__checkpoint_devices_setup
  *     setup remus devices, like attach qdisc, enable disk buffering, etc
- *   >libxl__remus_devices_teardown
+ *   >libxl__checkpoint_devices_teardown
  *     teardown devices
- *   >libxl__remus_devices_postsuspend
- *   >libxl__remus_devices_preresume
- *   >libxl__remus_devices_commit
+ *   >libxl__checkpoint_devices_postsuspend
+ *   >libxl__checkpoint_devices_preresume
+ *   >libxl__checkpoint_devices_commit
  *     above three are for checkpoint.
  * through remus device layer, the remus execution flow will be like
  * this:
@@ -2493,7 +2493,7 @@ typedef struct libxl__save_helper_state {
  *                     ...
  *                      |-> remus device teardown, failover or abort
  * the remus device layer provides an interface
- *   libxl__remus_device_subkind_ops
+ *   libxl__checkpoint_device_subkind_ops
  * which a remus device must implement. the whole remus structure:
  *                           |remus|
  *                              |
@@ -2501,21 +2501,21 @@ typedef struct libxl__save_helper_state {
  *                              |
  *               |nic| |drbd disks| |qemu disks| ...
  * a device(nic, drbd disks, qemu disks, etc) must implement
- * libxl__remus_device_subkind_ops to support remus.
+ * libxl__checkpoint_device_subkind_ops to support remus.
  */
 
-typedef enum libxl__remus_device_kind {
-    LIBXL__REMUS_DEVICE_NIC = (1 << 0),
-    LIBXL__REMUS_DEVICE_DISK= (1 << 1),
-} libxl__remus_device_kind;
+typedef enum libxl__checkpoint_device_kind {
+    LIBXL__CHECKPOINT_DEVICE_NIC = (1 << 0),
+    LIBXL__CHECKPOINT_DEVICE_DISK= (1 << 1),
+} libxl__checkpoint_device_kind;
 
-typedef struct libxl__remus_device libxl__remus_device;
-typedef struct libxl__remus_device_state libxl__remus_device_state;
-typedef struct libxl__remus_device_subkind_ops libxl__remus_device_subkind_ops;
+typedef struct libxl__checkpoint_device libxl__checkpoint_device;
+typedef struct libxl__checkpoint_device_state libxl__checkpoint_device_state;
+typedef struct libxl__checkpoint_device_subkind_ops libxl__checkpoint_device_subkind_ops;
 
-struct libxl__remus_device_subkind_ops {
+struct libxl__checkpoint_device_subkind_ops {
     /* the device kind this ops belongs to... */
-    libxl__remus_device_kind kind;
+    libxl__checkpoint_device_kind kind;
 
     /*
      * init() and destroy() APIs are produced by a device subkind and
@@ -2524,8 +2524,8 @@ struct libxl__remus_device_subkind_ops {
      * the APIs init/destroy device subkind's private data which stored
      * in CTX. must implement.
      */
-    int (*init)(libxl__remus_device_state *rds);
-    void (*destroy)(libxl__remus_device_state *rds);
+    int (*init)(libxl__checkpoint_device_state *cds);
+    void (*destroy)(libxl__checkpoint_device_state *cds);
 
     /*
      * checkpoint callbacks, these are async ops, call dev->callback
@@ -2535,9 +2535,9 @@ struct libxl__remus_device_subkind_ops {
      * These callbacks can be implemented synchronously, call
      * dev->callback at last directly.
      */
-    void (*postsuspend)(libxl__remus_device *dev);
-    void (*preresume)(libxl__remus_device *dev);
-    void (*commit)(libxl__remus_device *dev);
+    void (*postsuspend)(libxl__checkpoint_device *dev);
+    void (*preresume)(libxl__checkpoint_device *dev);
+    void (*commit)(libxl__checkpoint_device *dev);
 
     /*
      * This API determines whether the subkind matchs the specific device. In
@@ -2553,7 +2553,7 @@ struct libxl__remus_device_subkind_ops {
      * It's an async op and must be implemented asynchronously,
      * call dev->callback when done.
      */
-    void (*match)(libxl__remus_device *dev);
+    void (*match)(libxl__checkpoint_device *dev);
 
     /*
      * setup() and teardown() are refer to the actual remus device,
@@ -2562,31 +2562,31 @@ struct libxl__remus_device_subkind_ops {
      * These callbacks can be implemented synchronously, call
      * dev->callback at last directly.
      */
-    void (*setup)(libxl__remus_device *dev);
-    void (*teardown)(libxl__remus_device *dev);
+    void (*setup)(libxl__checkpoint_device *dev);
+    void (*teardown)(libxl__checkpoint_device *dev);
 };
 
 typedef void libxl__remus_callback(libxl__egc *,
-                                   libxl__remus_device_state *, int rc);
+                                   libxl__checkpoint_device_state *, int rc);
 
 /*
  * This structure is for remus device layer, it records remus devices
  * that have been set up.
  */
-struct libxl__remus_device_state {
-    /* must set by caller of libxl__remus_device_(setup|teardown) */
+struct libxl__checkpoint_device_state {
+    /* must set by caller of libxl__checkpoint_device_(setup|teardown) */
     libxl__ao *ao;
     libxl__egc *egc;
     uint32_t domid;
     libxl__remus_callback *callback;
     /* the last ops must be NULL */
-    const libxl__remus_device_subkind_ops **ops;
+    const libxl__checkpoint_device_subkind_ops **ops;
     int enabled_device_kinds;
 
     /* private */
     /* devices that have been set up */
     int saved_rc;
-    libxl__remus_device **dev;
+    libxl__checkpoint_device **dev;
 
     libxl_device_nic *nics;
     int num_nics;
@@ -2599,19 +2599,19 @@ struct libxl__remus_device_state {
     int num_set_up;
 };
 
-typedef void libxl__remus_device_callback(libxl__egc *,
-                                          libxl__remus_device *,
+typedef void libxl__checkpoint_device_callback(libxl__egc *,
+                                          libxl__checkpoint_device *,
                                           int rc);
 /*
  * This structure is init and setup by remus device abstruct layer,
  * and pass to remus device ops
  */
-struct libxl__remus_device {
+struct libxl__checkpoint_device {
     /*----- shared between abstract and concrete layers -----*/
     /* set by remus device abstruct layer */
     /* libxl__device_* which this remus device related to */
     const void *backend_dev;
-    libxl__remus_device_kind kind;
+    libxl__checkpoint_device_kind kind;
 
     /*----- private for abstract layer only -----*/
     /*
@@ -2619,9 +2619,9 @@ struct libxl__remus_device {
      * for the device.
      */
     int ops_index;
-    const libxl__remus_device_subkind_ops *ops;
-    libxl__remus_device_callback *callback;
-    libxl__remus_device_state *rds;
+    const libxl__checkpoint_device_subkind_ops *ops;
+    libxl__checkpoint_device_callback *callback;
+    libxl__checkpoint_device_state *cds;
 
     /*----- private for concrete (device-specific) layer -----*/
     /* *kind* of device's private data */
@@ -2636,20 +2636,20 @@ struct libxl__remus_device {
     libxl__ev_child child;
 };
 
-/* the following 5 APIs are async ops, call rds->callback when done */
-_hidden void libxl__remus_devices_setup(libxl__egc *egc,
-                                        libxl__remus_device_state *rds);
-_hidden void libxl__remus_devices_teardown(libxl__egc *egc,
-                                           libxl__remus_device_state *rds);
-_hidden void libxl__remus_devices_postsuspend(libxl__egc *egc,
-                                              libxl__remus_device_state *rds);
-_hidden void libxl__remus_devices_preresume(libxl__egc *egc,
-                                            libxl__remus_device_state *rds);
-_hidden void libxl__remus_devices_commit(libxl__egc *egc,
-                                         libxl__remus_device_state *rds);
-
-extern const libxl__remus_device_subkind_ops remus_device_nic;
-extern const libxl__remus_device_subkind_ops remus_device_drbd_disk;
+/* the following 5 APIs are async ops, call cds->callback when done */
+_hidden void libxl__checkpoint_devices_setup(libxl__egc *egc,
+                                        libxl__checkpoint_device_state *cds);
+_hidden void libxl__checkpoint_devices_teardown(libxl__egc *egc,
+                                           libxl__checkpoint_device_state *cds);
+_hidden void libxl__checkpoint_devices_postsuspend(libxl__egc *egc,
+                                              libxl__checkpoint_device_state *cds);
+_hidden void libxl__checkpoint_devices_preresume(libxl__egc *egc,
+                                            libxl__checkpoint_device_state *cds);
+_hidden void libxl__checkpoint_devices_commit(libxl__egc *egc,
+                                         libxl__checkpoint_device_state *cds);
+
+extern const libxl__checkpoint_device_subkind_ops remus_device_nic;
+extern const libxl__checkpoint_device_subkind_ops remus_device_drbd_disk;
 
 _hidden int libxl__netbuffer_enabled(libxl__gc *gc);
 
@@ -2693,7 +2693,7 @@ struct libxl__domain_suspend_state {
     const char *dm_savefile;
     /* for Remus */
     struct {
-        libxl__remus_device_state rds;
+        libxl__checkpoint_device_state cds;
         const char *netbufscript;
         /* used for Remus checkpoint */
         libxl__ev_time checkpoint_timeout;
diff --git a/tools/libxl/libxl_netbuffer.c b/tools/libxl/libxl_netbuffer.c
index 2387563..c9a6b6f 100644
--- a/tools/libxl/libxl_netbuffer.c
+++ b/tools/libxl/libxl_netbuffer.c
@@ -34,12 +34,12 @@ struct libxl__remus_netbuf_state {
     struct nl_cache *qdisc_cache;
 };
 
-typedef struct libxl__remus_device_nic {
+typedef struct libxl__checkpoint_device_nic {
     int devid;
     const char *vif;
     const char *ifb;
     struct rtnl_qdisc *qdisc;
-} libxl__remus_device_nic;
+} libxl__checkpoint_device_nic;
 
 int libxl__netbuffer_enabled(libxl__gc *gc)
 {
@@ -48,13 +48,13 @@ int libxl__netbuffer_enabled(libxl__gc *gc)
 
 /*----- init() and destroy() -----*/
 
-static int nic_init(libxl__remus_device_state *rds)
+static int nic_init(libxl__checkpoint_device_state *cds)
 {
     int rc, ret;
     libxl__remus_netbuf_state *ns;
-    libxl__domain_suspend_state *dss = CONTAINER_OF(rds, *dss, rds);
+    libxl__domain_suspend_state *dss = CONTAINER_OF(cds, *dss, cds);
 
-    STATE_AO_GC(rds->ao);
+    STATE_AO_GC(cds->ao);
 
     GCNEW(ns);
     CTX->rns = ns;
@@ -83,8 +83,8 @@ static int nic_init(libxl__remus_device_state *rds)
         goto out;
     }
 
-    ns->ao = rds->ao;
-    ns->domid = rds->domid;
+    ns->ao = cds->ao;
+    ns->domid = cds->domid;
     ns->netbufscript = dss->netbufscript;
 
     rc = 0;
@@ -93,9 +93,9 @@ out:
     return rc;
 }
 
-static void nic_destroy(libxl__remus_device_state *rds)
+static void nic_destroy(libxl__checkpoint_device_state *cds)
 {
-    STATE_AO_GC(rds->ao);
+    STATE_AO_GC(cds->ao);
     libxl__remus_netbuf_state *ns = CTX->rns;
 
     if (!ns)
@@ -126,14 +126,14 @@ static void nic_destroy(libxl__remus_device_state *rds)
  * it must ONLY be used for remus because if driver domains
  * were in use it would constitute a security vulnerability.
  */
-static const char *get_vifname(libxl__remus_device *dev,
+static const char *get_vifname(libxl__checkpoint_device *dev,
                                const libxl_device_nic *nic)
 {
     const char *vifname = NULL;
     const char *path;
     int rc;
 
-    STATE_AO_GC(dev->rds->ao);
+    STATE_AO_GC(dev->cds->ao);
 
     /* Convenience aliases */
     libxl__remus_netbuf_state *netbuf_state = CTX->rns;
@@ -151,7 +151,7 @@ static const char *get_vifname(libxl__remus_device *dev,
     return vifname;
 }
 
-static void free_qdisc(libxl__remus_device_nic *remus_nic)
+static void free_qdisc(libxl__checkpoint_device_nic *remus_nic)
 {
     if (remus_nic->qdisc == NULL)
         return;
@@ -161,7 +161,7 @@ static void free_qdisc(libxl__remus_device_nic *remus_nic)
 }
 
 static int init_qdisc(libxl__remus_netbuf_state *netbuf_state,
-                      libxl__remus_device_nic *remus_nic)
+                      libxl__checkpoint_device_nic *remus_nic)
 {
     int rc, ret, ifindex;
     struct rtnl_link *ifb = NULL;
@@ -251,13 +251,13 @@ static void netbuf_teardown_script_cb(libxl__egc *egc,
  * $REMUS_IFB (for teardown)
  * setup/teardown as command line arg.
  */
-static void setup_async_exec(libxl__remus_device *dev, char *op)
+static void setup_async_exec(libxl__checkpoint_device *dev, char *op)
 {
     int arraysize, nr = 0;
     char **env = NULL, **args = NULL;
     libxl__async_exec_state *aes = &dev->aes;
-    libxl__remus_device_nic *remus_nic = dev->data;
-    STATE_AO_GC(dev->rds->ao);
+    libxl__checkpoint_device_nic *remus_nic = dev->data;
+    STATE_AO_GC(dev->cds->ao);
 
     /* Convenience aliases */
     libxl__remus_netbuf_state *ns = CTX->rns;
@@ -288,7 +288,7 @@ static void setup_async_exec(libxl__remus_device *dev, char *op)
     args[nr++] = NULL;
     assert(nr == arraysize);
 
-    aes->ao = dev->rds->ao;
+    aes->ao = dev->cds->ao;
     aes->what = GCSPRINTF("%s %s", args[0], args[1]);
     aes->env = env;
     aes->args = args;
@@ -305,13 +305,13 @@ static void setup_async_exec(libxl__remus_device *dev, char *op)
 
 /* setup() and teardown() */
 
-static void nic_setup(libxl__remus_device *dev)
+static void nic_setup(libxl__checkpoint_device *dev)
 {
     int rc;
-    libxl__remus_device_nic *remus_nic;
+    libxl__checkpoint_device_nic *remus_nic;
     const libxl_device_nic *nic = dev->backend_dev;
 
-    STATE_AO_GC(dev->rds->ao);
+    STATE_AO_GC(dev->cds->ao);
 
     GCNEW(remus_nic);
     dev->data = remus_nic;
@@ -330,7 +330,7 @@ static void nic_setup(libxl__remus_device *dev)
     return;
 
 out:
-    dev->callback(dev->rds->egc, dev, rc);
+    dev->callback(dev->cds->egc, dev, rc);
 }
 
 /*
@@ -341,12 +341,12 @@ static void netbuf_setup_script_cb(libxl__egc *egc,
                                    libxl__async_exec_state *aes,
                                    int status)
 {
-    libxl__remus_device *dev = CONTAINER_OF(aes, *dev, aes);
-    libxl__remus_device_nic *remus_nic = dev->data;
+    libxl__checkpoint_device *dev = CONTAINER_OF(aes, *dev, aes);
+    libxl__checkpoint_device_nic *remus_nic = dev->data;
     const char *out_path_base, *hotplug_error = NULL;
     int rc;
 
-    STATE_AO_GC(dev->rds->ao);
+    STATE_AO_GC(dev->cds->ao);
 
     /* Convenience aliases */
     libxl__remus_netbuf_state *netbuf_state = CTX->rns;
@@ -401,10 +401,10 @@ out:
     dev->callback(egc, dev, rc);
 }
 
-static void nic_teardown(libxl__remus_device *dev)
+static void nic_teardown(libxl__checkpoint_device *dev)
 {
     int rc;
-    STATE_AO_GC(dev->rds->ao);
+    STATE_AO_GC(dev->cds->ao);
 
     setup_async_exec(dev, "teardown");
 
@@ -415,7 +415,7 @@ static void nic_teardown(libxl__remus_device *dev)
     return;
 
 out:
-    dev->callback(dev->rds->egc, dev, rc);
+    dev->callback(dev->cds->egc, dev, rc);
 }
 
 static void netbuf_teardown_script_cb(libxl__egc *egc,
@@ -423,8 +423,8 @@ static void netbuf_teardown_script_cb(libxl__egc *egc,
                                       int status)
 {
     int rc;
-    libxl__remus_device *dev = CONTAINER_OF(aes, *dev, aes);
-    libxl__remus_device_nic *remus_nic = dev->data;
+    libxl__checkpoint_device *dev = CONTAINER_OF(aes, *dev, aes);
+    libxl__checkpoint_device_nic *remus_nic = dev->data;
 
     if (status)
         rc = ERROR_FAIL;
@@ -446,7 +446,7 @@ enum {
 
 /* API implementations */
 
-static int remus_netbuf_op(libxl__remus_device_nic *remus_nic,
+static int remus_netbuf_op(libxl__checkpoint_device_nic *remus_nic,
                            libxl__remus_netbuf_state *netbuf_state,
                            int buffer_op)
 {
@@ -483,30 +483,30 @@ out:
     return rc;
 }
 
-static void nic_postsuspend(libxl__remus_device *dev)
+static void nic_postsuspend(libxl__checkpoint_device *dev)
 {
     int rc;
-    libxl__remus_device_nic *remus_nic = dev->data;
-    STATE_AO_GC(dev->rds->ao);
+    libxl__checkpoint_device_nic *remus_nic = dev->data;
+    STATE_AO_GC(dev->cds->ao);
     libxl__remus_netbuf_state *ns = CTX->rns;
 
     rc = remus_netbuf_op(remus_nic, ns, tc_buffer_start);
-    dev->callback(dev->rds->egc, dev, rc);
+    dev->callback(dev->cds->egc, dev, rc);
 }
 
-static void nic_commit(libxl__remus_device *dev)
+static void nic_commit(libxl__checkpoint_device *dev)
 {
     int rc;
-    libxl__remus_device_nic *remus_nic = dev->data;
-    STATE_AO_GC(dev->rds->ao);
+    libxl__checkpoint_device_nic *remus_nic = dev->data;
+    STATE_AO_GC(dev->cds->ao);
     libxl__remus_netbuf_state *ns = CTX->rns;
 
     rc = remus_netbuf_op(remus_nic, ns, tc_buffer_release);
-    dev->callback(dev->rds->egc, dev, rc);
+    dev->callback(dev->cds->egc, dev, rc);
 }
 
-const libxl__remus_device_subkind_ops remus_device_nic = {
-    .kind = LIBXL__REMUS_DEVICE_NIC,
+const libxl__checkpoint_device_subkind_ops remus_device_nic = {
+    .kind = LIBXL__CHECKPOINT_DEVICE_NIC,
     .init = nic_init,
     .destroy = nic_destroy,
     .setup = nic_setup,
diff --git a/tools/libxl/libxl_nonetbuffer.c b/tools/libxl/libxl_nonetbuffer.c
index fc29c36..b4a067e 100644
--- a/tools/libxl/libxl_nonetbuffer.c
+++ b/tools/libxl/libxl_nonetbuffer.c
@@ -22,25 +22,25 @@ int libxl__netbuffer_enabled(libxl__gc *gc)
     return 0;
 }
 
-static void nic_match(libxl__remus_device *dev)
+static void nic_match(libxl__checkpoint_device *dev)
 {
-    STATE_AO_GC(dev->rds->ao);
+    STATE_AO_GC(dev->cds->ao);
 
-    dev->callback(dev->rds->egc, dev, ERROR_FAIL);
+    dev->callback(dev->cds->egc, dev, ERROR_FAIL);
 }
 
-static int nic_init(libxl__remus_device_state *rds)
+static int nic_init(libxl__checkpoint_device_state *cds)
 {
     return 0;
 }
 
-static void nic_destroy(libxl__remus_device_state *rds)
+static void nic_destroy(libxl__checkpoint_device_state *cds)
 {
     return;
 }
 
-const libxl__remus_device_subkind_ops remus_device_nic = {
-    .kind = LIBXL__REMUS_DEVICE_NIC,
+const libxl__checkpoint_device_subkind_ops remus_device_nic = {
+    .kind = LIBXL__CHECKPOINT_DEVICE_NIC,
     .init = nic_init,
     .destroy = nic_destroy,
     .match = nic_match,
diff --git a/tools/libxl/libxl_remus_disk_drbd.c b/tools/libxl/libxl_remus_disk_drbd.c
index ae5a9d6..dd47286 100644
--- a/tools/libxl/libxl_remus_disk_drbd.c
+++ b/tools/libxl/libxl_remus_disk_drbd.c
@@ -33,12 +33,12 @@ typedef struct libxl__remus_drbd_disk {
 } libxl__remus_drbd_disk;
 
 /*----- helper functions, for async calls -----*/
-static void drbd_async_call(libxl__remus_device *dev,
-                            void func(libxl__remus_device *),
+static void drbd_async_call(libxl__checkpoint_device *dev,
+                            void func(libxl__checkpoint_device *),
                             libxl__ev_child_callback callback)
 {
     int pid = -1;
-    STATE_AO_GC(dev->rds->ao);
+    STATE_AO_GC(dev->cds->ao);
 
     /* Fork and call */
     pid = libxl__ev_child_fork(gc, &dev->child, callback);
@@ -57,15 +57,15 @@ static void drbd_async_call(libxl__remus_device *dev,
     return;
 
 out:
-    dev->callback(dev->rds->egc, dev, ERROR_FAIL);
+    dev->callback(dev->cds->egc, dev, ERROR_FAIL);
 }
 
 /*----- init() and destroy() -----*/
-static int drbd_init(libxl__remus_device_state *rds)
+static int drbd_init(libxl__checkpoint_device_state *cds)
 {
     libxl__remus_drbd_state *drbd_state;
 
-    STATE_AO_GC(rds->ao);
+    STATE_AO_GC(cds->ao);
 
     GCNEW(drbd_state);
     CTX->drbd_state = drbd_state;
@@ -76,7 +76,7 @@ static int drbd_init(libxl__remus_device_state *rds)
     return 0;
 }
 
-static void drbd_destroy(libxl__remus_device_state *rds)
+static void drbd_destroy(libxl__checkpoint_device_state *cds)
 {
     return;
 }
@@ -90,12 +90,12 @@ static void match_async_exec_cb(libxl__egc *egc,
 
 /* implementations */
 
-static void match_async_exec(libxl__egc *egc, libxl__remus_device *dev)
+static void match_async_exec(libxl__egc *egc, libxl__checkpoint_device *dev)
 {
     int arraysize, nr = 0;
     const libxl_device_disk *disk = dev->backend_dev;
     libxl__async_exec_state *aes = &dev->aes;
-    STATE_AO_GC(dev->rds->ao);
+    STATE_AO_GC(dev->cds->ao);
 
     libxl__remus_drbd_state *drbd_state = CTX->drbd_state;
     /* setup env & args */
@@ -129,29 +129,29 @@ out:
     dev->callback(egc, dev, ERROR_FAIL);
 }
 
-static void drbd_match(libxl__remus_device *dev)
+static void drbd_match(libxl__checkpoint_device *dev)
 {
-    match_async_exec(dev->rds->egc, dev);
+    match_async_exec(dev->cds->egc, dev);
 }
 
 static void match_async_exec_cb(libxl__egc *egc,
                                 libxl__async_exec_state *aes,
                                 int status)
 {
-    libxl__remus_device *dev = CONTAINER_OF(aes, *dev, aes);
+    libxl__checkpoint_device *dev = CONTAINER_OF(aes, *dev, aes);
 
     if (status) {
-        dev->callback(egc, dev, ERROR_REMUS_DEVOPS_NOT_MATCH);
+        dev->callback(egc, dev, ERROR_CHECKPOINT_DEVOPS_NOT_MATCH);
     } else {
         dev->callback(egc, dev, 0);
     }
 }
 
-static void drbd_setup(libxl__remus_device *dev)
+static void drbd_setup(libxl__checkpoint_device *dev)
 {
     libxl__remus_drbd_disk *drbd_disk;
     const libxl_device_disk *disk = dev->backend_dev;
-    STATE_AO_GC(dev->rds->ao);
+    STATE_AO_GC(dev->cds->ao);
 
     GCNEW(drbd_disk);
     dev->data = drbd_disk;
@@ -159,17 +159,17 @@ static void drbd_setup(libxl__remus_device *dev)
     drbd_disk->ackwait = 0;
     drbd_disk->ctl_fd = open(drbd_disk->path, O_RDONLY);
     if (drbd_disk->ctl_fd < 0)
-        dev->callback(dev->rds->egc, dev, ERROR_FAIL);
+        dev->callback(dev->cds->egc, dev, ERROR_FAIL);
     else
-        dev->callback(dev->rds->egc, dev, 0);
+        dev->callback(dev->cds->egc, dev, 0);
 }
 
-static void drbd_teardown(libxl__remus_device *dev)
+static void drbd_teardown(libxl__checkpoint_device *dev)
 {
     libxl__remus_drbd_disk *drbd_disk = dev->data;
 
     close(drbd_disk->ctl_fd);
-    dev->callback(dev->rds->egc, dev, 0);
+    dev->callback(dev->cds->egc, dev, 0);
 }
 
 /*----- checkpointing APIs -----*/
@@ -182,7 +182,7 @@ static void chekpoint_async_call_done(libxl__egc *egc,
 /* API implementations */
 
 /* this op will not wait and block, so implement as sync op */
-static void drbd_postsuspend(libxl__remus_device *dev)
+static void drbd_postsuspend(libxl__checkpoint_device *dev)
 {
     libxl__remus_drbd_disk *rdd = dev->data;
 
@@ -191,10 +191,10 @@ static void drbd_postsuspend(libxl__remus_device *dev)
             rdd->ackwait = 1;
     }
 
-    dev->callback(dev->rds->egc, dev, 0);
+    dev->callback(dev->cds->egc, dev, 0);
 }
 
-static void drbd_preresume_async(libxl__remus_device *dev)
+static void drbd_preresume_async(libxl__checkpoint_device *dev)
 {
     libxl__remus_drbd_disk *rdd = dev->data;
     int ackwait = rdd->ackwait;
@@ -207,7 +207,7 @@ static void drbd_preresume_async(libxl__remus_device *dev)
     _exit(ackwait);
 }
 
-static void drbd_preresume(libxl__remus_device *dev)
+static void drbd_preresume(libxl__checkpoint_device *dev)
 {
     drbd_async_call(dev, drbd_preresume_async, chekpoint_async_call_done);
 }
@@ -216,9 +216,9 @@ static void chekpoint_async_call_done(libxl__egc *egc,
                                       libxl__ev_child *child,
                                       pid_t pid, int status)
 {
-    libxl__remus_device *dev = CONTAINER_OF(child, *dev, child);
+    libxl__checkpoint_device *dev = CONTAINER_OF(child, *dev, child);
     libxl__remus_drbd_disk *rdd = dev->data;
-    STATE_AO_GC(dev->rds->ao);
+    STATE_AO_GC(dev->cds->ao);
 
     if (WIFEXITED(status)) {
         rdd->ackwait = WEXITSTATUS(status);
@@ -228,8 +228,8 @@ static void chekpoint_async_call_done(libxl__egc *egc,
     }
 }
 
-const libxl__remus_device_subkind_ops remus_device_drbd_disk = {
-    .kind = LIBXL__REMUS_DEVICE_DISK,
+const libxl__checkpoint_device_subkind_ops remus_device_drbd_disk = {
+    .kind = LIBXL__CHECKPOINT_DEVICE_DISK,
     .init = drbd_init,
     .destroy = drbd_destroy,
     .match = drbd_match,
diff --git a/tools/libxl/libxl_types.idl b/tools/libxl/libxl_types.idl
index 6551109..dc9f78e 100644
--- a/tools/libxl/libxl_types.idl
+++ b/tools/libxl/libxl_types.idl
@@ -58,8 +58,8 @@ libxl_error = Enumeration("error", [
     (-12, "OSEVENT_REG_FAIL"),
     (-13, "BUFFERFULL"),
     (-14, "UNKNOWN_CHILD"),
-    (-15, "REMUS_DEVOPS_NOT_MATCH"),
-    (-16, "REMUS_DEVICE_NOT_SUPPORTED"),
+    (-15, "CHECKPOINT_DEVOPS_NOT_MATCH"),
+    (-16, "CHECKPOINT_DEVICE_NOT_SUPPORTED"),
     ], value_namespace = "")
 
 libxl_domain_type = Enumeration("domain_type", [
-- 
1.9.3

  parent reply	other threads:[~2014-07-18 11:38 UTC|newest]

Thread overview: 36+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2014-07-18 11:38 [RFC Patch 00/25] COarse-grain LOck-stepping Virtual Machines for Non-stop Service Wen Congyang
2014-07-18 11:38 ` [RFC Patch 01/25] copy the correct page to memory Wen Congyang
2014-07-18 11:38 ` [RFC Patch 02/25] csum the correct page Wen Congyang
2014-07-18 11:38 ` [RFC Patch 03/25] don't zero out ioreq page Wen Congyang
2014-07-18 11:38 ` [RFC Patch 04/25] don't touch remus in remus_device Wen Congyang
2014-07-18 11:38 ` Wen Congyang [this message]
2014-07-18 11:38 ` [RFC Patch 06/25] adjust the indentation Wen Congyang
2014-07-18 11:38 ` [RFC Patch 07/25] Refactor domain_suspend_callback_common() Wen Congyang
2014-07-18 11:38 ` [RFC Patch 08/25] Update libxl__domain_resume() for colo Wen Congyang
2014-07-18 11:38 ` [RFC Patch 09/25] Update libxl__domain_suspend_common_switch_qemu_logdirty() " Wen Congyang
2014-07-18 11:38 ` [RFC Patch 10/25] Introduce a new internal API libxl__domain_unpause() Wen Congyang
2014-07-18 11:38 ` [RFC Patch 11/25] Update libxl__domain_unpause() to support qemu-xen Wen Congyang
2014-07-18 11:38 ` [RFC Patch 12/25] support to resume uncooperative HVM guests Wen Congyang
2014-07-18 11:38 ` [RFC Patch 13/25] update datecopier to support sending data only Wen Congyang
2014-07-18 11:38 ` [RFC Patch 14/25] introduce a new API to aync read data from fd Wen Congyang
2014-07-18 11:39 ` [RFC Patch 15/25] Update libxl_save_msgs_gen.pl to support return data from xl to xc Wen Congyang
2014-07-18 11:39 ` [RFC Patch 16/25] Allow slave sends data to master Wen Congyang
2014-07-18 11:39 ` [RFC Patch 17/25] secondary vm suspend/resume/checkpoint code Wen Congyang
2014-07-18 11:39 ` [RFC Patch 18/25] primary vm suspend/get_dirty_pfn/resume/checkpoint code Wen Congyang
2014-07-18 11:39 ` [RFC Patch 19/25] xc_domain_save: flush cache before calling callbacks->postcopy() in colo mode Wen Congyang
2014-07-18 11:39 ` [RFC Patch 20/25] COLO: xc related codes Wen Congyang
2014-07-18 11:39 ` [RFC Patch 21/25] send store mfn and console mfn to xl before resuming secondary vm Wen Congyang
2014-07-18 11:39 ` [RFC Patch 22/25] implement the cmdline for COLO Wen Congyang
2014-07-18 11:39 ` [RFC Patch 23/25] HACK: do checkpoint per 20ms Wen Congyang
2014-07-18 11:39 ` [RFC Patch 24/25] fix vm entry fail Wen Congyang
2014-07-24 10:40   ` Tim Deegan
2014-07-25  5:39     ` Wen Congyang
2014-08-07  6:52     ` Wen Congyang
2014-07-18 11:39 ` [RFC Patch 25/25] sync mmu before resuming secondary vm Wen Congyang
2014-07-24 10:59   ` Tim Deegan
2014-07-25  5:46     ` Wen Congyang
2014-08-07  7:46     ` Wen Congyang
2014-07-18 11:39 ` [RFC Patch 26/25] Introduce "xen-load-devices-state" Wen Congyang
2014-07-18 11:43 ` [RFC Patch 00/25] COarse-grain LOck-stepping Virtual Machines for Non-stop Service Wen Congyang
2014-07-18 14:18 ` Andrew Cooper
2014-07-18 14:30   ` Wen Congyang

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=1405683551-12579-6-git-send-email-wency@cn.fujitsu.com \
    --to=wency@cn.fujitsu.com \
    --cc=Ian.Campbell@citrix.com \
    --cc=Ian.Jackson@eu.citrix.com \
    --cc=eddie.dong@intel.com \
    --cc=laijs@cn.fujitsu.com \
    --cc=xen-devel@lists.xen.org \
    --cc=yanghy@cn.fujitsu.com \
    --cc=yunhong.jiang@intel.com \
    /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).