From 358c3189cd53ca4b4bdc70612f2c5fb694be68cb Mon Sep 17 00:00:00 2001 From: Bamvor Jian Zhang Date: Fri, 1 Nov 2013 15:26:26 +0800 Subject: [PATCH] fix api changes in xen restore in recently xen commit: 7051d5c8, there is a api changes in libxl_domain_create_restore. Author: Andrew Cooper Date: Thu Oct 10 12:23:10 2013 +0100 tools/migrate: Fix regression when migrating from older version of Xen use the macro LIBXL_HAVE_DOMAIN_CREATE_RESTORE_PARAMS in libxl.h in order to make libvirt could compile with old and new xen. the params checkpointed_stream is useful if libvirt libxl driver support migration. for new, set it as zero. Signed-off-by: Bamvor Jian Zhang (cherry picked from commit a52fa5569a90bc0e732e923da34d8b2aec68d751) Conflicts: src/libxl/libxl_driver.c - context: no commit d9f19c3 --- src/libxl/libxl_driver.c | 9 +++++++++ 1 file changed, 9 insertions(+) diff --git a/src/libxl/libxl_driver.c b/src/libxl/libxl_driver.c index aa1994e635..a48cbeb46e 100644 --- a/src/libxl/libxl_driver.c +++ b/src/libxl/libxl_driver.c @@ -924,6 +924,9 @@ libxlVmStart(libxlDriverPrivatePtr driver, virDomainObjPtr vm, char *managed_save_path = NULL; int managed_save_fd = -1; libxlDomainObjPrivatePtr priv = vm->privateData; +#ifdef LIBXL_HAVE_DOMAIN_CREATE_RESTORE_PARAMS + libxl_domain_restore_params params; +#endif /* If there is a managed saved state restore it instead of starting * from scratch. The old state is removed once the restoring succeeded. */ @@ -984,8 +987,14 @@ libxlVmStart(libxlDriverPrivatePtr driver, virDomainObjPtr vm, ret = libxl_domain_create_new(priv->ctx, &d_config, &domid, NULL, NULL); else +#ifdef LIBXL_HAVE_DOMAIN_CREATE_RESTORE_PARAMS + params.checkpointed_stream = 0; + ret = libxl_domain_create_restore(priv->ctx, &d_config, &domid, + restore_fd, ¶ms, NULL, NULL); +#else ret = libxl_domain_create_restore(priv->ctx, &d_config, &domid, restore_fd, NULL, NULL); +#endif if (ret) { if (restore_fd < 0)