|
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [Xen-devel] [PATCH] libxc: use correct return type for do_memory_op()
Currently do_memory_op() is returning int, while the hypervisor is
returning long. This will lead to wrong return informations as soon as
e.g. a pfn larger than about 2 billion (8 TB) is returned.
Use the correct long return type instead and correct the functions
expecting a pfn via the return value of do_memory_op().
Signed-off-by: Juergen Gross <jgross@xxxxxxxx>
---
tools/libxc/xc_domain.c | 2 +-
tools/libxc/xc_private.c | 2 +-
tools/libxc/xc_private.h | 2 +-
3 files changed, 3 insertions(+), 3 deletions(-)
diff --git a/tools/libxc/xc_domain.c b/tools/libxc/xc_domain.c
index e7278dd..83afc75 100644
--- a/tools/libxc/xc_domain.c
+++ b/tools/libxc/xc_domain.c
@@ -828,7 +828,7 @@ int xc_domain_get_tsc_info(xc_interface *xch,
int xc_domain_maximum_gpfn(xc_interface *xch, domid_t domid, xen_pfn_t *gpfns)
{
- int rc = do_memory_op(xch, XENMEM_maximum_gpfn, &domid, sizeof(domid));
+ long rc = do_memory_op(xch, XENMEM_maximum_gpfn, &domid, sizeof(domid));
if ( rc >= 0 )
{
diff --git a/tools/libxc/xc_private.c b/tools/libxc/xc_private.c
index 7c39897..6c0c0d6 100644
--- a/tools/libxc/xc_private.c
+++ b/tools/libxc/xc_private.c
@@ -519,7 +519,7 @@ int xc_flush_mmu_updates(xc_interface *xch, struct xc_mmu
*mmu)
return flush_mmu_updates(xch, mmu);
}
-int do_memory_op(xc_interface *xch, int cmd, void *arg, size_t len)
+long do_memory_op(xc_interface *xch, int cmd, void *arg, size_t len)
{
DECLARE_HYPERCALL;
DECLARE_HYPERCALL_BOUNCE(arg, len, XC_HYPERCALL_BUFFER_BOUNCE_BOTH);
diff --git a/tools/libxc/xc_private.h b/tools/libxc/xc_private.h
index 2df1d59..f603c15 100644
--- a/tools/libxc/xc_private.h
+++ b/tools/libxc/xc_private.h
@@ -374,7 +374,7 @@ static inline int do_multicall_op(xc_interface *xch,
return ret;
}
-int do_memory_op(xc_interface *xch, int cmd, void *arg, size_t len);
+long do_memory_op(xc_interface *xch, int cmd, void *arg, size_t len);
void *xc_map_foreign_ranges(xc_interface *xch, uint32_t dom,
size_t size, int prot, size_t chunksize,
--
2.6.2
_______________________________________________
Xen-devel mailing list
Xen-devel@xxxxxxxxxxxxx
http://lists.xen.org/xen-devel
|
![]() |
Lists.xenproject.org is hosted with RackSpace, monitoring our |