Xen 
 
Home About Xen.org Xen Xen Summit Wiki Mailing List Bug Tracker Xen Downloads
 
   
 

xen-devel

RE: [Xen-devel] Need help figuring out why my windows pv drivers wontwor

To: "xen-devel" <xen-devel@xxxxxxxxxxxxxxxxxxx>
Subject: RE: [Xen-devel] Need help figuring out why my windows pv drivers wontwork with a 32 bit dom0...
From: "James Harper" <james.harper@xxxxxxxxxxxxxxxx>
Date: Fri, 1 Feb 2008 15:52:55 +1100
Delivery-date: Thu, 31 Jan 2008 20:53:23 -0800
Envelope-to: www-data@xxxxxxxxxxxxxxxxxx
In-reply-to: <AEC6C66638C05B468B556EA548C1A77D0131AA0A@trantor>
List-help: <mailto:xen-devel-request@lists.xensource.com?subject=help>
List-id: Xen developer discussion <xen-devel.lists.xensource.com>
List-post: <mailto:xen-devel@lists.xensource.com>
List-subscribe: <http://lists.xensource.com/cgi-bin/mailman/listinfo/xen-devel>, <mailto:xen-devel-request@lists.xensource.com?subject=subscribe>
List-unsubscribe: <http://lists.xensource.com/cgi-bin/mailman/listinfo/xen-devel>, <mailto:xen-devel-request@lists.xensource.com?subject=unsubscribe>
References: <AEC6C66638C05B468B556EA548C1A77D0131AA0A@trantor>
Sender: xen-devel-bounces@xxxxxxxxxxxxxxxxxxx
Thread-index: AchkiOnjeDQcMReOR3CXpc44efwhugABLvuw
Thread-topic: [Xen-devel] Need help figuring out why my windows pv drivers wontwork with a 32 bit dom0...
> . Windows is padding structures differently under 32 and 64 bits.
> Strange that everything else works fine though...

I think I may be onto something with this...

32 bit Linux (using gcc and a quick .c file):
sizeof(uint8_t) = 1
sizeof(uint16_t) = 2
sizeof(uint32_t) = 4
sizeof(uint64_t) = 8
sizeof(struct blkif_request) = 108
sizeof(struct blkif_request_segment) = 8
sizeof(struct blkif_response) = 12

64 bit Linux (using gcc and a quick .c file):
sizeof(uint8_t) = 1
sizeof(uint16_t) = 2
sizeof(uint32_t) = 4
sizeof(uint64_t) = 8
sizeof(struct blkif_request) = 112
sizeof(struct blkif_request_segment) = 8
sizeof(struct blkif_response) = 16

32 bit Windows (using Microsoft DDK Compiler and debug statements in the
driver)
sizeof(uint8_t) = 1
sizeof(uint16_t) = 2
sizeof(uint32_t) = 4
sizeof(uint64_t) = 8
sizeof(struct blkif_request) = 112
sizeof(struct blkif_request_segment) = 8
sizeof(struct blkif_response) = 16

Haven't tried this test on 64 bit windows yet, but if 32 bit windows and
32 bit Linux align their structures differently, I can imagine that
problems are going to arise...

James


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

<Prev in Thread] Current Thread [Next in Thread>