提交 7d58c7fc 编写于 作者: J Jason Andryuk 提交者: Eric Blake

libxl: Fix Xen 4.4 libxlVmStart logic

ifdef LIBXL_HAVE_DOMAIN_CREATE_RESTORE_PARAMS hides a multi-line body
for a brace-less else.  Add braces to ensure proper logic is applied.

Without this fix, new domains cannot be started.  Both
libxl_domain_create_new and libxl_domain_create_restore are called when
starting a new domain leading to this error:
libxl: error: libxl.c:324:libxl__domain_rename: domain with name "guest" already exists.
libxl: error: libxl_create.c:800:initiate_domain_create: cannot make domain: -6
上级 84f69602
...@@ -618,10 +618,10 @@ libxlVmStart(libxlDriverPrivatePtr driver, virDomainObjPtr vm, ...@@ -618,10 +618,10 @@ libxlVmStart(libxlDriverPrivatePtr driver, virDomainObjPtr vm,
/* use as synchronous operations => ao_how = NULL and no intermediate reports => ao_progress = NULL */ /* use as synchronous operations => ao_how = NULL and no intermediate reports => ao_progress = NULL */
if (restore_fd < 0) if (restore_fd < 0) {
ret = libxl_domain_create_new(priv->ctx, &d_config, ret = libxl_domain_create_new(priv->ctx, &d_config,
&domid, NULL, NULL); &domid, NULL, NULL);
else } else {
#ifdef LIBXL_HAVE_DOMAIN_CREATE_RESTORE_PARAMS #ifdef LIBXL_HAVE_DOMAIN_CREATE_RESTORE_PARAMS
params.checkpointed_stream = 0; params.checkpointed_stream = 0;
ret = libxl_domain_create_restore(priv->ctx, &d_config, &domid, ret = libxl_domain_create_restore(priv->ctx, &d_config, &domid,
...@@ -630,6 +630,7 @@ libxlVmStart(libxlDriverPrivatePtr driver, virDomainObjPtr vm, ...@@ -630,6 +630,7 @@ libxlVmStart(libxlDriverPrivatePtr driver, virDomainObjPtr vm,
ret = libxl_domain_create_restore(priv->ctx, &d_config, &domid, ret = libxl_domain_create_restore(priv->ctx, &d_config, &domid,
restore_fd, NULL, NULL); restore_fd, NULL, NULL);
#endif #endif
}
if (ret) { if (ret) {
if (restore_fd < 0) if (restore_fd < 0)
......
Markdown is supported
0% .
You are about to add 0 people to the discussion. Proceed with caution.
先完成此消息的编辑!
想要评论请 注册