summaryrefslogtreecommitdiff
path: root/xen-hvm.c
diff options
context:
space:
mode:
authorPaul Durrant <paul.durrant@citrix.com>2017-03-22 09:39:15 +0000
committerStefano Stabellini <sstabellini@kernel.org>2017-04-21 12:40:14 -0700
commit1c599472b02783ee80691bfdaa465af9fbf25c8a (patch)
tree10afa631ab372f500ae8af5793684ae6f17b0512 /xen-hvm.c
parentf1167ee684279bffabe7bb3ab23eff87577fe427 (diff)
downloadqemu-1c599472b02783ee80691bfdaa465af9fbf25c8a.tar.gz
xen: use libxendevice model to restrict operations
This patch adds a command-line option (-xen-domid-restrict) which will use the new libxendevicemodel API to restrict devicemodel [1] operations to the specified domid. (Such operations are not applicable to the xenpv machine type). This patch also adds a tracepoint to allow successful enabling of the restriction to be monitored. [1] I.e. operations issued by libxendevicemodel. Operation issued by other xen libraries (e.g. libxenforeignmemory) are currently still unrestricted but this will be rectified by subsequent patches. Signed-off-by: Paul Durrant <paul.durrant@citrix.com> Reviewed-by: Stefano Stabellini <sstabellini@kernel.org>
Diffstat (limited to 'xen-hvm.c')
-rw-r--r--xen-hvm.c8
1 files changed, 8 insertions, 0 deletions
diff --git a/xen-hvm.c b/xen-hvm.c
index 4b928cfb30..335e263834 100644
--- a/xen-hvm.c
+++ b/xen-hvm.c
@@ -1226,6 +1226,14 @@ void xen_hvm_init(PCMachineState *pcms, MemoryRegion **ram_memory)
goto err;
}
+ if (xen_domid_restrict) {
+ rc = xen_restrict(xen_domid);
+ if (rc < 0) {
+ error_report("failed to restrict: error %d", errno);
+ goto err;
+ }
+ }
+
xen_create_ioreq_server(xen_domid, &state->ioservid);
state->exit.notify = xen_exit_notifier;