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

[Xen-devel] [PATCH][XEN] PV blk backend: Make 32bit PV guests work on 64bit PV Dom0



Hi,

Attached patch makes the PV block driver for 32bit PV guests working on
64bit PV Dom0.

In the io/blkif.h,  the 'id' field of
struct blkif_request is 64bit, but on a LP32 system it's aligned on 
32bits, while it'll be aligned to 64bits on a LP64 system. So on LP64 there'll 
be 4 bytes of padding between handle and id. The same is true for
struct blkif_response: it's 11 bytes long, so will be aligned differently
in the ring between a 32 and 64bit systems.

In order to fix this, attached patch introduces in the public headers,
blkif_request/blkif_response, blkif_x86_32_request/blkif_x86_32_response
and blkif_x86_64_request/blkif_x86_64_response.
NetBSD is doing so io/blkif.h in the public headers, while Linux
does so in include/xen/blkif.h in the linux sources. But the result is
the same ...

Successfully tested with the combinations:

64bit Dom0                32bit PAE PV guest
NetBSD                       Linux
Linux                            NetBSD

The combinations 64bit Dom0, 64bit PV DomU works with and without this patch.

Signed-off-by: Christoph Egger <Christoph.Egger@xxxxxxx>


-- 
AMD Saxony, Dresden, Germany
Operating System Research Center

Legal Information:
AMD Saxony Limited Liability Company & Co. KG
Sitz (Geschäftsanschrift):
   Wilschdorfer Landstr. 101, 01109 Dresden, Deutschland
Registergericht Dresden: HRA 4896
vertretungsberechtigter Komplementär:
   AMD Saxony LLC (Sitz Wilmington, Delaware, USA)
Geschäftsführer der AMD Saxony LLC:
   Dr. Hans-R. Deppe, Thomas McCoy

Attachment: public_blkif.diff
Description: Text Data

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

 


Rackspace

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