diff options
author | Ian Campbell <ian.campbell@citrix.com> | 2010-10-18 16:54:42 +0100 |
---|---|---|
committer | Ian Campbell <ian.campbell@citrix.com> | 2010-10-18 16:54:42 +0100 |
commit | 2674a296982598b97ffdd90fa407e4cdd1df3e13 (patch) | |
tree | ed8d08336c8bc9ea7a82ba3975d5074e1766b185 /tools/libxc/xc_private.c | |
parent | f5c808b428244f42b2310ddf173c624d9a2a842c (diff) | |
download | xen-2674a296982598b97ffdd90fa407e4cdd1df3e13.tar.gz xen-2674a296982598b97ffdd90fa407e4cdd1df3e13.tar.bz2 xen-2674a296982598b97ffdd90fa407e4cdd1df3e13.zip |
libxc: wrappers for XENMEM {increase,decrease}_reservation and populate_physmap
Currently the wrappers for these hypercalls swallow partial success
and return failure to the caller.
In order to use these functions more widely instead of open-coding
uses of XENMEM_* and xc_memory_op add variants which return the actual
hypercall result.
Therefore add the following functions:
xc_domain_increase_reservation
xc_domain_decrease_reservation
xc_domain_populate_physmap
and implement the existing semantics using these new functions as
xc_domain_increase_reservation_exact
xc_domain_decrease_reservation_exact
xc_domain_populate_physmap_exact
replacing the existing xc_domain_memory_* functions.
Use these new functions to replace all open coded uses of
XENMEM_increase_reservation, XENMEM_decrease_reservation and
XENMEM_populate_physmap.
Also rename xc_domain_memory_*_pod_target to xc_domain_*_pod_target
for consistency.
Temporarily add a compatibility macro for
xc_domain_memory_populate_physmap to allow time for qemu to catch up.
Signed-off-by: Ian Campbell <ian.campbell@citrix.com>
Signed-off-by: Ian Jackson <ian.jackson@eu.citrix.com>
Diffstat (limited to 'tools/libxc/xc_private.c')
-rw-r--r-- | tools/libxc/xc_private.c | 4 |
1 files changed, 2 insertions, 2 deletions
diff --git a/tools/libxc/xc_private.c b/tools/libxc/xc_private.c index ccc1370229..d32c1d42cb 100644 --- a/tools/libxc/xc_private.c +++ b/tools/libxc/xc_private.c @@ -675,14 +675,14 @@ unsigned long xc_make_page_below_4G( xen_pfn_t old_mfn = mfn; xen_pfn_t new_mfn; - if ( xc_domain_memory_decrease_reservation( + if ( xc_domain_decrease_reservation_exact( xch, domid, 1, 0, &old_mfn) != 0 ) { DPRINTF("xc_make_page_below_4G decrease failed. mfn=%lx\n",mfn); return 0; } - if ( xc_domain_memory_increase_reservation( + if ( xc_domain_increase_reservation_exact( xch, domid, 1, 0, XENMEMF_address_bits(32), &new_mfn) != 0 ) { DPRINTF("xc_make_page_below_4G increase failed. mfn=%lx\n",mfn); |