aboutsummaryrefslogtreecommitdiffstats
path: root/tools/libxl/libxl_dm.c
diff options
context:
space:
mode:
authorPaul Durrant <paul.durrant@citrix.com>2013-08-02 17:45:31 +0100
committerIan Campbell <ian.campbell@citrix.com>2013-08-05 10:25:21 +0100
commit066e134fb33b7fe0a0a496b459bbd675b146403c (patch)
treec8f5b3358095ade49a5eddc6cdca9aaf475df813 /tools/libxl/libxl_dm.c
parentc10b492064ad83d6db8d576014cdcbe73f028e50 (diff)
downloadxen-066e134fb33b7fe0a0a496b459bbd675b146403c.tar.gz
xen-066e134fb33b7fe0a0a496b459bbd675b146403c.tar.bz2
xen-066e134fb33b7fe0a0a496b459bbd675b146403c.zip
Add vendor_device parameter for HVM guests
The parameter determines which, if any, xen-pvdevice is specified on the QEMU command line. The default value is 'none' which means no argument will be passed. A value of 'xenserver' specifies a xen-pvdevice with device-id 0xc000 (the initial value in the xenserver namespace - see docs/misc/pci-device-reservations.txt). Signed-off-by: Paul Durrant <paul.durrant@citrix.com> Acked-by: Ian Campbell <ian.campbell@citrix.com> [ ijc -- s/BUILD_INFO/BUILDINFO for consistency in LIBXL_HAVE define ]
Diffstat (limited to 'tools/libxl/libxl_dm.c')
-rw-r--r--tools/libxl/libxl_dm.c9
1 files changed, 9 insertions, 0 deletions
diff --git a/tools/libxl/libxl_dm.c b/tools/libxl/libxl_dm.c
index 7e54c02a21..615dcf3945 100644
--- a/tools/libxl/libxl_dm.c
+++ b/tools/libxl/libxl_dm.c
@@ -647,6 +647,15 @@ static char ** libxl__build_device_model_args_new(libxl__gc *gc,
flexarray_append(dm_args, "-drive");
flexarray_append(dm_args, drive);
}
+
+ switch (b_info->u.hvm.vendor_device) {
+ case LIBXL_VENDOR_DEVICE_XENSERVER:
+ flexarray_append(dm_args, "-device");
+ flexarray_append(dm_args, "xen-pvdevice,device-id=0xc000");
+ break;
+ default:
+ break;
+ }
}
flexarray_append(dm_args, NULL);
return (char **) flexarray_contents(dm_args);