From d473b016fb7ab10d46fcfb37f990037ac0368a35 Mon Sep 17 00:00:00 2001 From: Shriram Rajagopalan Date: Fri, 18 May 2012 11:00:44 +0100 Subject: libxl: Remus - suspend/postflush/commit callbacks * Add libxl callback functions for Remus checkpoint suspend, postflush (aka resume) and checkpoint commit callbacks. * suspend callback is a stub that just bounces off libxl__domain_suspend_common_callback - which suspends the domain and saves the devices model state to a file. * resume callback currently just resumes the domain (and the device model). * commit callback just writes out the saved device model state to the network and sleeps for the checkpoint interval. * Introduce a new public API, libxl_domain_remus_start (currently a stub) that sets up the network and disk buffer and initiates continuous checkpointing. * Future patches will augment these callbacks/functions with more functionalities like issuing network buffer plug/unplug commands, disk checkpoint commands, etc. Signed-off-by: Shriram Rajagopalan Acked-by: Ian Campbell Committed-by: Ian Campbell --- tools/libxl/libxl.h | 2 ++ 1 file changed, 2 insertions(+) (limited to 'tools/libxl/libxl.h') diff --git a/tools/libxl/libxl.h b/tools/libxl/libxl.h index 10bd053226..316d290579 100644 --- a/tools/libxl/libxl.h +++ b/tools/libxl/libxl.h @@ -525,6 +525,8 @@ int libxl_domain_create_restore(libxl_ctx *ctx, libxl_domain_config *d_config, void libxl_domain_config_init(libxl_domain_config *d_config); void libxl_domain_config_dispose(libxl_domain_config *d_config); +int libxl_domain_remus_start(libxl_ctx *ctx, libxl_domain_remus_info *info, + uint32_t domid, int send_fd, int recv_fd); int libxl_domain_suspend(libxl_ctx *ctx, libxl_domain_suspend_info *info, uint32_t domid, int fd); -- cgit v1.2.3