[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [Xen-changelog] [xen-unstable] fix wrong path while calling pygrub and libxl-save-helper
# HG changeset patch # User Bamvor Jian Zhang <bjzhang@xxxxxxxx> # Date 1357906948 0 # Node ID 2ad5792b4274d76ced39515cbd3f84898b181768 # Parent ba2d73234d73fc0faa027cd9bdfd3ac90642733c fix wrong path while calling pygrub and libxl-save-helper in current xen x86_64, the default libexec directory is /usr/lib/xen/bin, while the private binder is /usr/lib64/xen/bin. but some commands(pygrub, libxl-save-helper) located in private binder directory is called from libexec directory which lead to the following error: 1, for pygrub bootloader: libxl: debug: libxl_bootloader.c:429:bootloader_disk_attached_cb: /usr/lib/xen/bin/pygrub doesn't exist, falling back to config path 2, for libxl-save-helper: libxl: cannot execute /usr/lib/xen/bin/libxl-save-helper: No such file or directory libxl: error: libxl_utils.c:363:libxl_read_exactly: file/stream truncated reading ipc msg header from domain 3 save/restore helper stdout pipe libxl: error: libxl_exec.c:118:libxl_report_child_exitstatus: domain 3 save/restore helper [10222] exited with error status 255 there are two ways to fix above error. the first one is make such command store in the /usr/lib/xen/bin and /usr/lib64/xen/bin(symbol link to previous), e.g. qemu-dm. The second way is using private binder dir instead of libexec dir. e.g. xenconsole. For these cases, the latter one is suitable. Signed-off-by: Bamvor Jian Zhang <bjzhang@xxxxxxxx> Committed-by: Ian Campbell <ian.campbell@xxxxxxxxxx> --- diff -r ba2d73234d73 -r 2ad5792b4274 tools/libxl/libxl_bootloader.c --- a/tools/libxl/libxl_bootloader.c Fri Jan 11 12:22:27 2013 +0000 +++ b/tools/libxl/libxl_bootloader.c Fri Jan 11 12:22:28 2013 +0000 @@ -419,7 +419,7 @@ static void bootloader_disk_attached_cb( const char *bltmp; struct stat st; - bltmp = libxl__abs_path(gc, bootloader, libxl__libexec_path()); + bltmp = libxl__abs_path(gc, bootloader, libxl__private_bindir_path()); /* Check to see if the file exists in this location; if not, * fall back to checking the path */ LOG(DEBUG, "Checking for bootloader in libexec path: %s", bltmp); diff -r ba2d73234d73 -r 2ad5792b4274 tools/libxl/libxl_save_callout.c --- a/tools/libxl/libxl_save_callout.c Fri Jan 11 12:22:27 2013 +0000 +++ b/tools/libxl/libxl_save_callout.c Fri Jan 11 12:22:28 2013 +0000 @@ -172,7 +172,7 @@ static void run_helper(libxl__egc *egc, shs->stdout_what = GCSPRINTF("domain %"PRIu32" save/restore helper" " stdout pipe", domid); - *arg++ = getenv("LIBXL_SAVE_HELPER") ?: LIBEXEC "/" "libxl-save-helper"; + *arg++ = getenv("LIBXL_SAVE_HELPER") ?: PRIVATE_BINDIR "/" "libxl-save-helper"; *arg++ = mode_arg; const char **stream_fd_arg = arg++; for (i=0; i<num_argnums; i++) _______________________________________________ Xen-changelog mailing list Xen-changelog@xxxxxxxxxxxxx http://lists.xensource.com/xen-changelog
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |