[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Xen-changelog] [xen-unstable] hvm: Fix ioreq structure size to be 32/64-bit invariant.



# HG changeset patch
# User kfraser@xxxxxxxxxxxxxxxxxxxxx
# Date 1177428517 -3600
# Node ID 4bbc509a0b3fbb1bcf87dcea49ef3558c1d069fa
# Parent  ee56c8d8864b9b5406471e6cb088547d15d68a20
hvm: Fix ioreq structure size to be 32/64-bit invariant.
This fixes booting HVM guests with 32-bit dom0 on 64-bit Xen.
Signed-off-by: Keir Fraser <keir@xxxxxxxxxxxxx>
---
 xen/include/public/hvm/ioreq.h |    9 +++++----
 1 files changed, 5 insertions(+), 4 deletions(-)

diff -r ee56c8d8864b -r 4bbc509a0b3f xen/include/public/hvm/ioreq.h
--- a/xen/include/public/hvm/ioreq.h    Tue Apr 24 15:01:13 2007 +0100
+++ b/xen/include/public/hvm/ioreq.h    Tue Apr 24 16:28:37 2007 +0100
@@ -65,9 +65,10 @@ typedef struct ioreq ioreq_t;
 typedef struct ioreq ioreq_t;
 
 struct vcpu_iodata {
-    struct ioreq         vp_ioreq;
-    /* Event channel port */
-    unsigned int    vp_eport;   /* VMX vcpu uses this to notify DM */
+    struct ioreq vp_ioreq;
+    /* Event channel port, used for notifications to/from the device model. */
+    uint32_t vp_eport;
+    uint32_t _pad0;
 };
 typedef struct vcpu_iodata vcpu_iodata_t;
 
@@ -81,7 +82,7 @@ struct buffered_iopage {
     unsigned int    read_pointer;
     unsigned int    write_pointer;
     ioreq_t         ioreq[IOREQ_BUFFER_SLOT_NUM];
-};            /* sizeof this structure must be in one page */
+}; /* NB. Size of this structure must be no greater than one page. */
 typedef struct buffered_iopage buffered_iopage_t;
 
 #if defined(__ia64__)

_______________________________________________
Xen-changelog mailing list
Xen-changelog@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-changelog


 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.