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

Re: [Xen-devel] [PATCH v4 --for 4.6 COLOPre 24/25] tools/libxl: move remus state into a seperate structure

On 07/15/2015 09:28 PM, Ian Campbell wrote:
On Wed, 2015-07-15 at 15:45 +0800, Yang Hongyang wrote:
@@ -2921,6 +2911,26 @@ _hidden void 
libxl__checkpoint_devices_preresume(libxl__egc *egc,
                                          libxl__checkpoint_devices_state *cds);
  _hidden void libxl__checkpoint_devices_commit(libxl__egc *egc,
                                          libxl__checkpoint_devices_state *cds);
+/*----- Remus related state structure -----*/
+typedef struct libxl__remus_state libxl__remus_state;
+struct libxl__remus_state {
+    /* private */
+    libxl__ev_time checkpoint_timeout; /* used for Remus checkpoint */
+    int interval; /* checkpoint interval */
+    /* abstract layer */
+    libxl__checkpoint_devices_state cds;

This mostly makes sense, I think, but this one field feels like it will
be wanted by colo too. Does that mean we will end up with dss->rs.cds
and dss->colo.cds doing effectively the same thing?

Yes, checkpoint device is an abstract layer, used by both Remus & colo,
in the abstract layer, we do not aware of remus or colo, in Remus or colo,
we can use container of cds to retrive Remus/colo state.




Xen-devel mailing list



Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.