* [PATCH v2] libxc: add xc_domain_remove_from_physmap to wrap XENMEM_remove_from_physmap
@ 2017-08-19 10:11 Zhongze Liu
2017-08-21 20:53 ` Stefano Stabellini
0 siblings, 1 reply; 2+ messages in thread
From: Zhongze Liu @ 2017-08-19 10:11 UTC (permalink / raw)
To: xen-devel
Cc: Wei Liu, Julien Grall, Stefano Stabellini, Ian Jackson,
Zhongze Liu
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>
Cc: Ian Jackson <ian.jackson@eu.citrix.com>
Cc: Wei Liu <wei.liu2@citrix.com>
Cc: Stefano Stabellini <sstabellini@kernel.org>
Cc: Julien Grall <julien.grall@arm.com>
Cc: xen-devel@lists.xen.org
---
v2: add the signed-off message
---
tools/libxc/include/xenctrl.h | 4 ++++
tools/libxc/xc_domain.c | 11 +++++++++++
2 files changed, 15 insertions(+)
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)
--
2.14.0
_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xen.org
https://lists.xen.org/xen-devel
^ permalink raw reply related [flat|nested] 2+ messages in thread* Re: [PATCH v2] libxc: add xc_domain_remove_from_physmap to wrap XENMEM_remove_from_physmap
2017-08-19 10:11 [PATCH v2] libxc: add xc_domain_remove_from_physmap to wrap XENMEM_remove_from_physmap Zhongze Liu
@ 2017-08-21 20:53 ` Stefano Stabellini
0 siblings, 0 replies; 2+ messages in thread
From: Stefano Stabellini @ 2017-08-21 20:53 UTC (permalink / raw)
To: Zhongze Liu
Cc: Wei Liu, Julien Grall, Stefano Stabellini, Ian Jackson, xen-devel
On Sat, 19 Aug 2017, 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>
> Cc: Ian Jackson <ian.jackson@eu.citrix.com>
> Cc: Wei Liu <wei.liu2@citrix.com>
> Cc: Stefano Stabellini <sstabellini@kernel.org>
> Cc: Julien Grall <julien.grall@arm.com>
> Cc: xen-devel@lists.xen.org
> ---
> v2: add the signed-off message
> ---
> tools/libxc/include/xenctrl.h | 4 ++++
> tools/libxc/xc_domain.c | 11 +++++++++++
> 2 files changed, 15 insertions(+)
>
> 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)
> --
> 2.14.0
>
_______________________________________________
Xen-devel mailing list
Xen-devel@lists.xen.org
https://lists.xen.org/xen-devel
^ permalink raw reply [flat|nested] 2+ messages in thread
end of thread, other threads:[~2017-08-21 20:53 UTC | newest]
Thread overview: 2+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2017-08-19 10:11 [PATCH v2] libxc: add xc_domain_remove_from_physmap to wrap XENMEM_remove_from_physmap Zhongze Liu
2017-08-21 20:53 ` Stefano Stabellini
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).