[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [Xen-devel] [PATCH RFC/WIPv2 2/6] libxc: support XENMEM_transfer operation
Introduce xc_domain_transfer_pages() function supporting XENMEM_transfer. Signed-off-by: Vitaly Kuznetsov <vkuznets@xxxxxxxxxx> --- tools/libxc/xc_domain.c | 19 +++++++++++++++++++ tools/libxc/xenctrl.h | 6 ++++++ 2 files changed, 25 insertions(+) diff --git a/tools/libxc/xc_domain.c b/tools/libxc/xc_domain.c index 1a6f90a..b844f8b 100644 --- a/tools/libxc/xc_domain.c +++ b/tools/libxc/xc_domain.c @@ -924,6 +924,25 @@ int xc_domain_claim_pages(xc_interface *xch, return err; } +int xc_domain_transfer_pages(xc_interface *xch, + uint32_t source_domid, + uint32_t dest_domid, + xen_pfn_t gmfn_start, + uint64_t gmfn_count) +{ + int err; + struct xen_memory_transfer trans = { + .source_domid = source_domid, + .dest_domid = dest_domid, + .gmfn_start = gmfn_start, + .gmfn_count = gmfn_count, + .nr_transferred = 0 + }; + + err = do_memory_op(xch, XENMEM_transfer, &trans, sizeof(trans)); + return err; +} + int xc_domain_populate_physmap(xc_interface *xch, uint32_t domid, unsigned long nr_extents, diff --git a/tools/libxc/xenctrl.h b/tools/libxc/xenctrl.h index 514b241..cff36c6 100644 --- a/tools/libxc/xenctrl.h +++ b/tools/libxc/xenctrl.h @@ -1353,6 +1353,12 @@ int xc_domain_claim_pages(xc_interface *xch, uint32_t domid, unsigned long nr_pages); +int xc_domain_transfer_pages(xc_interface *xch, + uint32_t source_domid, + uint32_t dest_domid, + xen_pfn_t gmfn_start, + uint64_t gmfn_count); + int xc_domain_memory_exchange_pages(xc_interface *xch, int domid, unsigned long nr_in_extents, -- 1.9.3 _______________________________________________ Xen-devel mailing list Xen-devel@xxxxxxxxxxxxx http://lists.xen.org/xen-devel
|
Lists.xenproject.org is hosted with RackSpace, monitoring our |