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

[Xen-devel] Need help figuring out why my windows pv drivers wont work with a 32 bit dom0...


  • To: "xen-devel" <xen-devel@xxxxxxxxxxxxxxxxxxx>
  • From: "James Harper" <james.harper@xxxxxxxxxxxxxxxx>
  • Date: Fri, 1 Feb 2008 15:14:18 +1100
  • Delivery-date: Thu, 31 Jan 2008 20:14:47 -0800
  • List-id: Xen developer discussion <xen-devel.lists.xensource.com>
  • Thread-index: AchkiOnjeDQcMReOR3CXpc44efwhug==
  • Thread-topic: Need help figuring out why my windows pv drivers wont work with a 32 bit dom0...

All my development up until now on the Windows PV drivers has been on an
AMD64 system with a 64 bit hypervisor, a 64 bit Dom0, and 32 or 64 bit
Windows DomU's, and that has all worked fine for me.

I've been getting reports of problems from other people, and initially
assumed (incorrectly I think) that it was a problem with Intel, but as
it turns out it appears to be a problem when Dom0 is 32 bit. When I test
with a 64 bit hypervisor and a 32 bit Dom0, the block device drivers
don't work - the first request gives a failure, and a few requests later
I get a crash. The crash is most likely because I may not be handling
failures correctly.

Anyway, I can't seem to figure out why things are breaking under vbd
when Dom0 is 32 bit. Vif works perfectly. Before some very recent
testing, I wasn't even setting the 'protocol' frontend xenstore
parameter, but I have since tried setting it to XEN_IO_PROTO_ABI_NATIVE,
XEN_IO_PROTO_ABI_X86_64 and XEN_IO_PROTO_ABI_X86_32, without any
success.

At around the time of the error, Dom0 logs "(XEN) grant_table.c:264:d0
Bad flags (0) or dom (0). (expected dom 0)", which I assume is probably
related.

Can anyone suggest what is different about the backend that I might not
be taking into account? My thoughts so far are:
. Windows is padding structures differently under 32 and 64 bits.
Strange that everything else works fine though...
. The pfn I get from MmGetMdlPfnArray (windows kernel api) isn't valid
to a 32 bit Dom0 (this function is used identically in the vif driver
though)

Any and all suggestions will be greatly appreciated!

Thanks

James

_______________________________________________
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®.