Message ID | 20170822180840.20981-2-blackskygg@gmail.com (mailing list archive) |
---|---|
State | New, archived |
Headers | show |
On Wed, Aug 23, 2017 at 02:08:35AM +0800, Zhongze Liu wrote: > This is for the proposal "Allow setting up shared memory areas between VMs > from xl config file". See: > > https://lists.xenproject.org/archives/html/xen-devel/2017-07/msg03047.html > > Then plan is to use XENMEM_add_to_physmap_batch to map the shared pages from > one domU to another and use XENMEM_remove_from_physmap to cancel the sharing. > A wrapper to XENMEM_add_to_physmap_batch was added in the following commit: > > commit 20e725e9364cff4a29945f66986ecd88cca8743d > > Now add the wrapper to XENMEM_remove_from_physmap. > > Signed-off-by: Zhongze Liu <blackskygg@gmail.com> > Reviewed-by: Stefano Stabellini <sstabellini@kernel.org> Acked-by: Wei Liu <wei.liu2@citrix.com>
diff --git a/tools/libxc/include/xenctrl.h b/tools/libxc/include/xenctrl.h index c7710b8f36..0ff15a9255 100644 --- a/tools/libxc/include/xenctrl.h +++ b/tools/libxc/include/xenctrl.h @@ -1381,6 +1381,10 @@ int xc_domain_add_to_physmap_batch(xc_interface *xch, xen_pfn_t *gfpns, int *errs); +int xc_domain_remove_from_physmap(xc_interface *xch, + domid_t domid, + xen_pfn_t gpfn); + int xc_domain_populate_physmap(xc_interface *xch, uint32_t domid, unsigned long nr_extents, diff --git a/tools/libxc/xc_domain.c b/tools/libxc/xc_domain.c index 3bab4e8bab..e6b32792c0 100644 --- a/tools/libxc/xc_domain.c +++ b/tools/libxc/xc_domain.c @@ -1077,6 +1077,17 @@ out: return rc; } +int xc_domain_remove_from_physmap(xc_interface *xch, + domid_t domid, + xen_pfn_t gpfn) +{ + struct xen_remove_from_physmap xrfp = { + .domid = domid, + .gpfn = gpfn, + }; + return do_memory_op(xch, XENMEM_remove_from_physmap, &xrfp, sizeof(xrfp)); +} + int xc_domain_claim_pages(xc_interface *xch, uint32_t domid, unsigned long nr_pages)