Mailing List Archive

[PATCH 03 of 32] tools: libxl: write selected BIOS to xenstore
# HG changeset patch
# User Ian Campbell <ian.campbell@citrix.com>
# Date 1303133817 -3600
# Node ID 9f86b6a9e01723f9ed642b5f188655ae49d0936e
# Parent 6c83af82be35420c606d494678eef6fdafcd6c5b
tools: libxl: write selected BIOS to xenstore.

Signed-off-by: Ian Campbell <ian.campbell@citrix.com>

diff -r 6c83af82be35 -r 9f86b6a9e017 tools/libxl/libxl_dm.c
--- a/tools/libxl/libxl_dm.c Mon Apr 18 14:35:19 2011 +0100
+++ b/tools/libxl/libxl_dm.c Mon Apr 18 14:36:57 2011 +0100
@@ -69,6 +69,16 @@ const char *libxl__domain_device_model(l
return dm;
}

+static char *libxl__domain_bios(libxl__gc *gc,
+ libxl_device_model_info *info)
+{
+ switch (info->device_model_version) {
+ case 1: return libxl__strdup(gc, "rombios");
+ case 2: return libxl__strdup(gc, "rombios");
+ default:return NULL;
+ }
+}
+
static char ** libxl__build_device_model_args_old(libxl__gc *gc,
const char *dm,
libxl_device_model_info *info,
@@ -753,6 +763,11 @@ int libxl__create_device_model(libxl__gc
goto out;
}

+ path = libxl__sprintf(gc, "/local/domain/%d/hvmloader", info->domid);
+ xs_mkdir(ctx->xsh, XBT_NULL, path);
+ libxl__xs_write(gc, XBT_NULL, libxl__sprintf(gc, "%s/bios", path),
+ libxl__domain_bios(gc, info));
+
path = libxl__sprintf(gc, "/local/domain/0/device-model/%d", info->domid);
xs_mkdir(ctx->xsh, XBT_NULL, path);
libxl__xs_write(gc, XBT_NULL, libxl__sprintf(gc, "%s/disable_pf", path), "%d", !info->xen_platform_pci);
@@ -875,6 +890,7 @@ int libxl__destroy_device_model(libxl__g
}
}
xs_rm(ctx->xsh, XBT_NULL, libxl__sprintf(gc, "/local/domain/0/device-model/%d", domid));
+ xs_rm(ctx->xsh, XBT_NULL, libxl__sprintf(gc, "/local/domain/%d/hvmloader", domid));

out:
return ret;

_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xensource.com
http://lists.xensource.com/xen-devel
[PATCH 03 of 32] tools: libxl: write selected BIOS to xenstore [ In reply to ]
# HG changeset patch
# User Ian Campbell <ian.campbell@citrix.com>
# Date 1303315986 -3600
# Node ID 8eb5c6ebc5c95791e8c129e75030a7979c1e7f5d
# Parent e8073053ef283658dd096f0846b0c438a29b6778
tools: libxl: write selected BIOS to xenstore.

Signed-off-by: Ian Campbell <ian.campbell@citrix.com>

diff -r e8073053ef28 -r 8eb5c6ebc5c9 tools/libxl/libxl_dm.c
--- a/tools/libxl/libxl_dm.c Wed Apr 20 17:13:00 2011 +0100
+++ b/tools/libxl/libxl_dm.c Wed Apr 20 17:13:06 2011 +0100
@@ -69,6 +69,16 @@ const char *libxl__domain_device_model(l
return dm;
}

+static char *libxl__domain_bios(libxl__gc *gc,
+ libxl_device_model_info *info)
+{
+ switch (info->device_model_version) {
+ case 1: return libxl__strdup(gc, "rombios");
+ case 2: return libxl__strdup(gc, "rombios");
+ default:return NULL;
+ }
+}
+
static char ** libxl__build_device_model_args_old(libxl__gc *gc,
const char *dm,
libxl_device_model_info *info,
@@ -753,6 +763,11 @@ int libxl__create_device_model(libxl__gc
goto out;
}

+ path = libxl__sprintf(gc, "/local/domain/%d/hvmloader", info->domid);
+ xs_mkdir(ctx->xsh, XBT_NULL, path);
+ libxl__xs_write(gc, XBT_NULL, libxl__sprintf(gc, "%s/bios", path),
+ libxl__domain_bios(gc, info));
+
path = libxl__sprintf(gc, "/local/domain/0/device-model/%d", info->domid);
xs_mkdir(ctx->xsh, XBT_NULL, path);
libxl__xs_write(gc, XBT_NULL, libxl__sprintf(gc, "%s/disable_pf", path), "%d", !info->xen_platform_pci);
@@ -875,6 +890,7 @@ int libxl__destroy_device_model(libxl__g
}
}
xs_rm(ctx->xsh, XBT_NULL, libxl__sprintf(gc, "/local/domain/0/device-model/%d", domid));
+ xs_rm(ctx->xsh, XBT_NULL, libxl__sprintf(gc, "/local/domain/%d/hvmloader", domid));

out:
return ret;

_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xensource.com
http://lists.xensource.com/xen-devel