aboutsummaryrefslogtreecommitdiffstats
path: root/tools/libxl/libxl.h
diff options
context:
space:
mode:
authorDaniel De Graaf <dgdegra@tycho.nsa.gov>2013-04-15 10:33:25 -0400
committerIan Campbell <ian.campbell@citrix.com>2013-04-17 14:55:36 +0100
commitef496b81f0336f09968a318e7f81151dd4f5a0cc (patch)
tree6125e22ae11b66884d086ebc24c85a6b0daee490 /tools/libxl/libxl.h
parent0b0ec476bb9dca589674745ebffb0f6799774d6e (diff)
downloadxen-ef496b81f0336f09968a318e7f81151dd4f5a0cc.tar.gz
xen-ef496b81f0336f09968a318e7f81151dd4f5a0cc.tar.bz2
xen-ef496b81f0336f09968a318e7f81151dd4f5a0cc.zip
libxl: postpone backend name resolution
This adds a backend_domname field in libxl devices that contain a backend_domid field, allowing either a domid or a domain name to be specified in the configuration structures. The domain name is resolved into a domain ID in the _setdefault function when adding the device. This change allows the backend of the block devices to be specified (which previously required passing the libxl_ctx down into the block device parser), and will simplify specification of backend domains in other users of libxl. The check on run_hotplug_scripts in parse_config_data is removed because it is a duplicate of the one in libxl__device_nic_setdefault, and is removed here because it no longer has the resolved domain ID to check. Signed-off-by: Daniel De Graaf <dgdegra@tycho.nsa.gov> Acked-by: Ian Jackson <ian.jackson@eu.citrix.com> Acked-by: Ian Campbell <ian.campbell@citrix.com> [ ijc -- reran flex ]
Diffstat (limited to 'tools/libxl/libxl.h')
-rw-r--r--tools/libxl/libxl.h12
1 files changed, 12 insertions, 0 deletions
diff --git a/tools/libxl/libxl.h b/tools/libxl/libxl.h
index 92f3f8ee0b..25efa76a04 100644
--- a/tools/libxl/libxl.h
+++ b/tools/libxl/libxl.h
@@ -296,6 +296,18 @@
*/
#define LIBXL_HAVE_BUILDINFO_USBDEVICE_LIST 1
+/*
+ * LIBXL_HAVE_DEVICE_BACKEND_DOMNAME
+ *
+ * If this is defined, libxl_device_* structures containing a backend_domid
+ * field also contain a backend_domname field. If backend_domname is set, it is
+ * resolved to a domain ID when the device is used and takes precedence over the
+ * backend_domid field.
+ *
+ * If this is not defined, the backend_domname field does not exist.
+ */
+#define LIBXL_HAVE_DEVICE_BACKEND_DOMNAME 1
+
/* Functions annotated with LIBXL_EXTERNAL_CALLERS_ONLY may not be
* called from within libxl itself. Callers outside libxl, who
* do not #include libxl_internal.h, are fine. */