# HG changeset patch
# User Ian Campbell <ian.campbell@xxxxxxxxxx>
# Date 1288787704 0
# Node ID e464dfc8d5e9d919ae4ff25181ba27bc568af3d4
# Parent 66c0e432398f055f42af2493e22690cbf98b0686
libxc: fix bounce buffers in xc_pm_get_cx_stat and xc_pm_get_pxstat
We should bounce the buffers themselves, not the pointers to them!
Error introduced by 22292:a1b39d2b9001 and reported by Yang Z Zhang.
Signed-off-by: Ian Campbell <ian.campbell@xxxxxxxxxx>
Signed-off-by: Ian Jackson <ian.jackson@xxxxxxxxxxxxx>
---
tools/libxc/xc_pm.c | 8 ++++----
1 files changed, 4 insertions(+), 4 deletions(-)
diff -r 66c0e432398f -r e464dfc8d5e9 tools/libxc/xc_pm.c
--- a/tools/libxc/xc_pm.c Wed Nov 03 12:27:00 2010 +0000
+++ b/tools/libxc/xc_pm.c Wed Nov 03 12:35:04 2010 +0000
@@ -46,8 +46,8 @@ int xc_pm_get_pxstat(xc_interface *xch,
{
DECLARE_SYSCTL;
/* Sizes unknown until xc_pm_get_max_px */
- DECLARE_NAMED_HYPERCALL_BOUNCE(trans, &pxpt->trans_pt, 0,
XC_HYPERCALL_BUFFER_BOUNCE_BOTH);
- DECLARE_NAMED_HYPERCALL_BOUNCE(pt, &pxpt->pt, 0,
XC_HYPERCALL_BUFFER_BOUNCE_BOTH);
+ DECLARE_NAMED_HYPERCALL_BOUNCE(trans, pxpt->trans_pt, 0,
XC_HYPERCALL_BUFFER_BOUNCE_BOTH);
+ DECLARE_NAMED_HYPERCALL_BOUNCE(pt, pxpt->pt, 0,
XC_HYPERCALL_BUFFER_BOUNCE_BOTH);
int max_px, ret;
@@ -124,8 +124,8 @@ int xc_pm_get_cxstat(xc_interface *xch,
int xc_pm_get_cxstat(xc_interface *xch, int cpuid, struct xc_cx_stat *cxpt)
{
DECLARE_SYSCTL;
- DECLARE_NAMED_HYPERCALL_BOUNCE(triggers, &cxpt->triggers, 0,
XC_HYPERCALL_BUFFER_BOUNCE_BOTH);
- DECLARE_NAMED_HYPERCALL_BOUNCE(residencies, &cxpt->residencies, 0,
XC_HYPERCALL_BUFFER_BOUNCE_BOTH);
+ DECLARE_NAMED_HYPERCALL_BOUNCE(triggers, cxpt->triggers, 0,
XC_HYPERCALL_BUFFER_BOUNCE_BOTH);
+ DECLARE_NAMED_HYPERCALL_BOUNCE(residencies, cxpt->residencies, 0,
XC_HYPERCALL_BUFFER_BOUNCE_BOTH);
int max_cx, ret;
if( !cxpt || !(cxpt->triggers) || !(cxpt->residencies) )
_______________________________________________
Xen-changelog mailing list
Xen-changelog@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-changelog
|