From mboxrd@z Thu Jan 1 00:00:00 1970 From: Olaf Hering Subject: [PATCH] libxl: pass debug flag down to libxl_domain_suspend Date: Thu, 31 Jan 2013 17:05:03 +0100 Message-ID: <256d59b2bc8a41387655.1359648303@probook.site> Mime-Version: 1.0 Content-Type: text/plain; charset="us-ascii" Content-Transfer-Encoding: 7bit Return-path: List-Unsubscribe: , List-Post: List-Help: List-Subscribe: , Sender: xen-devel-bounces@lists.xen.org Errors-To: xen-devel-bounces@lists.xen.org To: xen-devel@lists.xen.org List-Id: xen-devel@lists.xenproject.org # HG changeset patch # User Olaf Hering # Date 1359648298 -3600 # Node ID 256d59b2bc8a413876559dc8daf4c52ba46677de # Parent 12455da211d4e841692b2374086356a87eb74ff7 libxl: pass debug flag down to libxl_domain_suspend libxl_domain_suspend is already prepared to handle LIBXL_SUSPEND_DEBUG, and xl migrate handles the -d switch as well. Pass this flag down to libxl_domain_suspend, so that finally xc_domain_save can dump huge amount of debug data to stdout. Update xl.5 and help text output. Signed-off-by: Olaf Hering diff -r 12455da211d4 -r 256d59b2bc8a docs/man/xl.pod.1 --- a/docs/man/xl.pod.1 +++ b/docs/man/xl.pod.1 @@ -387,6 +387,10 @@ domain. See the corresponding option of Send instead of config file from creation. +=item B<-e> + +Print huge (!) amount of debug during the migration process. + =back =item B [I] I I diff -r 12455da211d4 -r 256d59b2bc8a tools/libxl/xl_cmdimpl.c --- a/tools/libxl/xl_cmdimpl.c +++ b/tools/libxl/xl_cmdimpl.c @@ -3331,7 +3331,7 @@ static void migrate_do_preamble(int send } -static void migrate_domain(uint32_t domid, const char *rune, +static void migrate_domain(uint32_t domid, const char *rune, int debug, const char *override_config_file) { pid_t child = -1; @@ -3340,7 +3340,7 @@ static void migrate_domain(uint32_t domi char *away_domname; char rc_buf; uint8_t *config_data; - int config_len; + int config_len, flags = LIBXL_SUSPEND_LIVE; save_domain_core_begin(domid, override_config_file, &config_data, &config_len); @@ -3358,7 +3358,9 @@ static void migrate_domain(uint32_t domi xtl_stdiostream_adjust_flags(logger, XTL_STDIOSTREAM_HIDE_PROGRESS, 0); - rc = libxl_domain_suspend(ctx, domid, send_fd, LIBXL_SUSPEND_LIVE, NULL); + if (debug) + flags |= LIBXL_SUSPEND_DEBUG; + rc = libxl_domain_suspend(ctx, domid, send_fd, flags, NULL); if (rc) { fprintf(stderr, "migration sender: libxl_domain_suspend failed" " (rc=%d)\n", rc); @@ -3784,7 +3786,7 @@ int main_migrate(int argc, char **argv) return 1; } - migrate_domain(domid, rune, config_filename); + migrate_domain(domid, rune, debug, config_filename); return 0; } diff -r 12455da211d4 -r 256d59b2bc8a tools/libxl/xl_cmdtable.c --- a/tools/libxl/xl_cmdtable.c +++ b/tools/libxl/xl_cmdtable.c @@ -153,7 +153,8 @@ struct cmd_spec cmd_table[] = { " to sh. If empty, run instead of ssh xl\n" " migrate-receive [-d -e]\n" "-e Do not wait in the background (on ) for the death\n" - " of the domain." + " of the domain.\n" + "-d Print huge (!) amount of debug during the migration process." }, { "dump-core", &main_dump_core, 0, 1,