libxl: fix paths for non-standard installations
authorKeir Fraser <keir.fraser@citrix.com>
Fri, 7 May 2010 18:16:40 +0000 (19:16 +0100)
committerKeir Fraser <keir.fraser@citrix.com>
Fri, 7 May 2010 18:16:40 +0000 (19:16 +0100)
Attached patch removes hardcoded pathes and corrects wrong path to
qemu-dm.

Signed-off-by: Christoph Egger <Christoph.Egger@amd.com>
Acked-by: Stefano Stabellini <stefano.stabellini@eu.citrix.com>
tools/libxl/libxl.c
tools/libxl/xl_cmdimpl.c

index eb4574ad864c4e7b50821ccbc0bcbc6d73c485c0..da364e61d1dad76091e0db2d267b6a6036a32877 100644 (file)
@@ -1318,7 +1318,10 @@ int libxl_device_disk_add(struct libxl_ctx *ctx, uint32_t domid, libxl_device_di
 
                         null_r = open("/dev/null", O_RDONLY);
                         null_w = open("/dev/null", O_WRONLY);
-                        libxl_exec(null_r, p[1], null_w, "/usr/sbin/tapdisk2", args);
+                        libxl_exec(null_r, p[1], null_w,
+                                   libxl_abs_path(ctx, "tapdisk2",
+                                                  libxl_sbindir_path()),
+                                   args);
                         XL_LOG(ctx, XL_LOG_ERROR, "Error execing tapdisk2");
                     }
                     close(p[1]);
@@ -1758,7 +1761,7 @@ static int libxl_build_xenpv_qemu_args(struct libxl_ctx *ctx,
     }
     info->domid = vfb->domid;
     info->dom_name = libxl_domid_to_name(ctx, vfb->domid);
-    info->device_model = libxl_abs_path(ctx, "qemu-dm", libxl_private_bindir_path());
+    info->device_model = libxl_abs_path(ctx, "qemu-dm", libxl_libexec_path());
     info->type = XENPV;
     return 0;
 }
index 30d1e5e452c04a2c41bb705c873b601d4f7419b4..e71d0ceb07754e6ba799577095e08cb747b84b75 100644 (file)
@@ -178,7 +178,7 @@ static void init_build_info(libxl_domain_build_info *b_info, libxl_domain_create
     if (c_info->hvm) {
         b_info->shadow_memkb = libxl_get_required_shadow_memory(b_info->max_memkb, b_info->max_vcpus);
         b_info->video_memkb = 8 * 1024;
-        b_info->kernel = "/usr/lib/xen/boot/hvmloader";
+        b_info->kernel = "hvmloader";
         b_info->hvm = 1;
         b_info->u.hvm.pae = 1;
         b_info->u.hvm.apic = 1;
@@ -201,7 +201,7 @@ static void init_dm_info(libxl_device_model_info *dm_info,
     }
 
     dm_info->dom_name = c_info->name;
-    dm_info->device_model = "/usr/lib/xen/bin/qemu-dm";
+    dm_info->device_model = "qemu-dm";
     dm_info->videoram = b_info->video_memkb / 1024;
     dm_info->apic = b_info->u.hvm.apic;