diff options
author | Tim Deegan <tim@xen.org> | 2012-03-08 16:40:05 +0000 |
---|---|---|
committer | Tim Deegan <tim@xen.org> | 2012-03-08 16:40:05 +0000 |
commit | 08d62198150bb50f4a0e19e5f96141c2394415f0 (patch) | |
tree | 3055b81042d900319cd4ba735fcf451a2408b9f3 /tools/libxc/xc_mem_paging.c | |
parent | 9a0405c411fcec03d316342e900c75f417a21486 (diff) | |
download | xen-08d62198150bb50f4a0e19e5f96141c2394415f0.tar.gz xen-08d62198150bb50f4a0e19e5f96141c2394415f0.tar.bz2 xen-08d62198150bb50f4a0e19e5f96141c2394415f0.zip |
Tools: Remove shared page from mem_event/access/paging interfaces
Don't use the superfluous shared page, return the event channel directly as
part of the domctl struct, instead.
In-tree consumers (xenpaging, xen-access) updated. This is an ABI/API change,
so please voice any concerns.
Known pending issues:
- pager could die and its ring page could be used by some other process, yet
Xen retains the mapping to it.
- use a saner interface for the paging_load buffer.
This change also affects the x86/mm bits in the hypervisor that process the
mem_event setup domctl.
Signed-off-by: Andres Lagar-Cavilla <andres@lagarcavilla.org>
Acked-by: Tim Deegan <tim@xen.org>
Acked-by: Olaf Hering <olaf@aepfle.de>
Acked-by: Ian Campbell <ian.campbell@citrix.com>
Committed-by: Tim Deegan <tim@xen.org>
Diffstat (limited to 'tools/libxc/xc_mem_paging.c')
-rw-r--r-- | tools/libxc/xc_mem_paging.c | 10 |
1 files changed, 8 insertions, 2 deletions
diff --git a/tools/libxc/xc_mem_paging.c b/tools/libxc/xc_mem_paging.c index c1330295e7..f8eaa870b3 100644 --- a/tools/libxc/xc_mem_paging.c +++ b/tools/libxc/xc_mem_paging.c @@ -25,12 +25,18 @@ int xc_mem_paging_enable(xc_interface *xch, domid_t domain_id, - void *shared_page, void *ring_page) + uint32_t *port, void *ring_page) { + if ( !port ) + { + errno = EINVAL; + return -1; + } + return xc_mem_event_control(xch, domain_id, XEN_DOMCTL_MEM_EVENT_OP_PAGING_ENABLE, XEN_DOMCTL_MEM_EVENT_OP_PAGING, - shared_page, ring_page); + port, ring_page); } int xc_mem_paging_disable(xc_interface *xch, domid_t domain_id) |