[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [Xen-devel] [PATCH RFCv3 4/8] libxc: support XEN_DOMCTL_set_recipient
Introduce new xc_domain_set_recipient() function to support XEN_DOMCTL_set_recipient. Signed-off-by: Vitaly Kuznetsov <vkuznets@xxxxxxxxxx> --- tools/libxc/xc_domain.c | 10 ++++++++++ tools/libxc/xenctrl.h | 14 ++++++++++++++ 2 files changed, 24 insertions(+) diff --git a/tools/libxc/xc_domain.c b/tools/libxc/xc_domain.c index 14f4666..2c69087 100644 --- a/tools/libxc/xc_domain.c +++ b/tools/libxc/xc_domain.c @@ -92,6 +92,16 @@ int xc_domain_destroy(xc_interface *xch, return ret; } +int xc_domain_set_recipient(xc_interface *xch, + uint32_t domid, uint32_t recipient) +{ + DECLARE_DOMCTL; + domctl.cmd = XEN_DOMCTL_set_recipient; + domctl.domain = (domid_t)domid; + domctl.u.recipient.recipient = (domid_t)recipient; + return do_domctl(xch, &domctl); +} + int xc_domain_shutdown(xc_interface *xch, uint32_t domid, int reason) diff --git a/tools/libxc/xenctrl.h b/tools/libxc/xenctrl.h index 514b241..e59c718 100644 --- a/tools/libxc/xenctrl.h +++ b/tools/libxc/xenctrl.h @@ -551,6 +551,20 @@ int xc_domain_unpause(xc_interface *xch, int xc_domain_destroy(xc_interface *xch, uint32_t domid); +/** + * This function sets a 'recipient' domain for a domain (when the source domain + * releases memory it is being reassigned to the recipient domain instead of + * being freed). The destination domain is supposed to have enough max_mem. + * Supplying DOMID_INVALID as a recipient cleans things up. + * + * @parm xch a handle to an open hypervisor interface + * @parm domid the source domain id + * @parm recipient the destrination domain id + * @return 0 on success, -1 on failure + */ +int xc_domain_set_recipient(xc_interface *xch, + uint32_t domid, uint32_t recipient); + /** * This function resumes a suspended domain. The domain should have -- 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 |