aboutsummaryrefslogtreecommitdiffstats
path: root/tools
diff options
context:
space:
mode:
authorIan Campbell <ian.campbell@citrix.com>2012-03-01 12:26:15 +0000
committerIan Campbell <ian.campbell@citrix.com>2012-03-01 12:26:15 +0000
commit80c9b2be515f6f3b7fb5467c4aa937c62e0ab53e (patch)
tree80876e96c7e1cb7aa295ad14ead1584b2b295c0c /tools
parent071a3436dfded497d0cd40ea1cd3227306b28a6f (diff)
downloadxen-80c9b2be515f6f3b7fb5467c4aa937c62e0ab53e.tar.gz
xen-80c9b2be515f6f3b7fb5467c4aa937c62e0ab53e.tar.bz2
xen-80c9b2be515f6f3b7fb5467c4aa937c62e0ab53e.zip
libxl: switch generation id control to libxl_defbool.
This allows it to be set via the _init/_setdefault methods. Also switch the sense of the variable in the libxl API, since once you add defbool to the mix the double negatives become even more confusing. Signed-off-by: Ian Campbell <ian.campbell@citrix.com> Acked-by: Ian Jackson <ian.jackson@eu.citrix.com> Cc: Paul Durrant <Paul.Durrant@citrix.com>
Diffstat (limited to 'tools')
-rw-r--r--tools/libxl/libxl_create.c2
-rw-r--r--tools/libxl/libxl_dom.c2
-rw-r--r--tools/libxl/libxl_types.idl2
-rw-r--r--tools/libxl/xl_cmdimpl.c10
-rw-r--r--tools/libxl/xl_sxp.c4
5 files changed, 11 insertions, 9 deletions
diff --git a/tools/libxl/libxl_create.c b/tools/libxl/libxl_create.c
index 72c60b01b2..7beb562284 100644
--- a/tools/libxl/libxl_create.c
+++ b/tools/libxl/libxl_create.c
@@ -89,7 +89,6 @@ void libxl_domain_build_info_init(libxl_domain_build_info *b_info,
b_info->u.hvm.firmware = NULL;
b_info->u.hvm.bios = 0;
b_info->u.hvm.timer_mode = LIBXL_TIMER_MODE_DEFAULT;
- b_info->u.hvm.no_incr_generationid = 0;
b_info->u.hvm.stdvga = 0;
b_info->u.hvm.vnc.enable = 1;
@@ -151,6 +150,7 @@ int libxl__domain_build_info_setdefault(libxl__gc *gc,
libxl_defbool_setdefault(&b_info->u.hvm.hpet, true);
libxl_defbool_setdefault(&b_info->u.hvm.vpt_align, true);
libxl_defbool_setdefault(&b_info->u.hvm.nested_hvm, false);
+ libxl_defbool_setdefault(&b_info->u.hvm.incr_generationid, false);
libxl_defbool_setdefault(&b_info->u.hvm.usb, false);
libxl_defbool_setdefault(&b_info->u.hvm.xen_platform_pci, true);
diff --git a/tools/libxl/libxl_dom.c b/tools/libxl/libxl_dom.c
index d2c879a105..9b33267353 100644
--- a/tools/libxl/libxl_dom.c
+++ b/tools/libxl/libxl_dom.c
@@ -406,7 +406,7 @@ int libxl__domain_restore_common(libxl__gc *gc, uint32_t domid,
hvm = 1;
superpages = 1;
pae = libxl_defbool_val(info->u.hvm.pae);
- no_incr_generationid = info->u.hvm.no_incr_generationid;
+ no_incr_generationid = !libxl_defbool_val(info->u.hvm.incr_generationid);
break;
case LIBXL_DOMAIN_TYPE_PV:
hvm = 0;
diff --git a/tools/libxl/libxl_types.idl b/tools/libxl/libxl_types.idl
index 3b5590b0d7..2810e36656 100644
--- a/tools/libxl/libxl_types.idl
+++ b/tools/libxl/libxl_types.idl
@@ -267,7 +267,7 @@ libxl_domain_build_info = Struct("domain_build_info",[
("vpt_align", libxl_defbool),
("timer_mode", libxl_timer_mode),
("nested_hvm", libxl_defbool),
- ("no_incr_generationid", bool),
+ ("incr_generationid",libxl_defbool),
("nographic", bool),
("stdvga", bool),
("vnc", libxl_vnc_info),
diff --git a/tools/libxl/xl_cmdimpl.c b/tools/libxl/xl_cmdimpl.c
index ef65a65ed8..5c5e651880 100644
--- a/tools/libxl/xl_cmdimpl.c
+++ b/tools/libxl/xl_cmdimpl.c
@@ -1357,7 +1357,7 @@ struct domain_create {
const char *restore_file;
int migrate_fd; /* -1 means none */
char **migration_domname_r; /* from malloc */
- int no_incr_generationid;
+ int incr_generationid;
};
static int freemem(libxl_domain_build_info *b_info)
@@ -1608,8 +1608,8 @@ static int create_domain(struct domain_create *dom_info)
}
if (d_config.c_info.type == LIBXL_DOMAIN_TYPE_HVM)
- d_config.b_info.u.hvm.no_incr_generationid =
- dom_info->no_incr_generationid;
+ libxl_defbool_set(&d_config.b_info.u.hvm.incr_generationid,
+ dom_info->incr_generationid);
if (debug || dom_info->dryrun)
printf_info(default_output_format, -1, &d_config);
@@ -2884,7 +2884,7 @@ static void migrate_receive(int debug, int daemonize, int monitor)
dom_info.restore_file = "incoming migration stream";
dom_info.migrate_fd = 0; /* stdin */
dom_info.migration_domname_r = &migration_domname;
- dom_info.no_incr_generationid = 1;
+ dom_info.incr_generationid = 0;
rc = create_domain(&dom_info);
if (rc < 0) {
@@ -3009,6 +3009,7 @@ int main_restore(int argc, char **argv)
dom_info.restore_file = checkpoint_file;
dom_info.migrate_fd = -1;
dom_info.console_autoconnect = console_autoconnect;
+ dom_info.incr_generationid = 1;
rc = create_domain(&dom_info);
if (rc < 0)
@@ -3394,6 +3395,7 @@ int main_create(int argc, char **argv)
dom_info.extra_config = extra_config;
dom_info.migrate_fd = -1;
dom_info.console_autoconnect = console_autoconnect;
+ dom_info.incr_generationid = 0;
rc = create_domain(&dom_info);
if (rc < 0)
diff --git a/tools/libxl/xl_sxp.c b/tools/libxl/xl_sxp.c
index e51f2f617a..ab05ad9be1 100644
--- a/tools/libxl/xl_sxp.c
+++ b/tools/libxl/xl_sxp.c
@@ -108,8 +108,8 @@ void printf_info_sexp(int domid, libxl_domain_config *d_config)
libxl_timer_mode_to_string(b_info->u.hvm.timer_mode));
printf("\t\t\t(nestedhvm %s)\n",
libxl_defbool_to_string(b_info->u.hvm.nested_hvm));
- printf("\t\t\t(no_incr_generationid %d)\n",
- b_info->u.hvm.no_incr_generationid);
+ printf("\t\t\t(no_incr_generationid %s)\n",
+ libxl_defbool_to_string(b_info->u.hvm.incr_generationid));
printf("\t\t\t(stdvga %d)\n", b_info->u.hvm.stdvga);
printf("\t\t\t(vnc %d)\n", b_info->u.hvm.vnc.enable);