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

RE: [Xen-users] Which Permutations of 64/32 work?



At 2006-09-25 11:30 +0200, Petersson, Mats wrote:


> -----Original Message-----
> From: xen-users-bounces@xxxxxxxxxxxxxxxxxxx
> [mailto:xen-users-bounces@xxxxxxxxxxxxxxxxxxx] On Behalf Of Derek
> Sent: 24 September 2006 19:02
> To: xen ml
> Subject: [Xen-users] Which Permutations of 64/32 work?
>
> Hi,
>
> I'm sure this must be documented somewhere, but I can't find it.
>
> Is there a document somewhere that shows which permutations of 64/32
> bits are known to work or known not to work with XEN 3.0.2 on 64-bit
> hardware?
>
> I.e. which of the following eight permutations work:
>
>   - 64-bit dom0 OS with 64 bit HVM domU OS    (?)
Yes.
>   - 64-bit dom0 OS with 32 bit HVM domU OS    (?)
Yes.
>   - 64-bit dom0 OS with 64 bit paravirt domU OS (?)
Yes.
>   - 64-bit dom0 OS with 32 bit paravirt domU OS (?)
No.
>   - 32-bit dom0 OS with 64 bit HVM domU OS    (?)
No.
>   - 32-bit dom0 OS with 32 bit HVM domU OS    (WORKS)
Yes.
>   - 32-bit dom0 OS with 64 bit paravirt domU OS  (?)
No.
>   - 32-bit dom0 OS with 32 bit paravirt domU OS  (WORKS)
Yes.

You've also missed the "intermediate" 32-bit PAE mode [supports > 4GB
RAM for the Dom0 and DomU, but at any given time 4GB only is visible],
which applies as:
32-bit PAE Dom0 + 32-bit PAE HVM DomU.
Yes.
32-bit PAE Dom0 + 32-bit HVM DomU.
Yes.
32-bit PAE Dom0 + 32-bit PAE PV DomU.
Yes.
All other combinations (32-bit PV DomU, 64-bit any DomU) doesn't work.

The generic rule is:
For Paravirtual, the guest has to be equal to Dom0.
For HVM, the guest has to be equal or less than Dom0.
Xen Hypervisor itself must be EQUAL to Dom0.

To explain how this works: Xen itself must be able to access the same
memory as the guest domain [Dom0 and DomU]. In the case of full (HVM)
virtualization, it's possible to have different page-tables (and thus
different "bitness") for the guest than the hypervisor, because the
transition (VMRUN/VMEXIT) swaps CR3 (Page-table base address)[1] when
switching between DomU and Xen. In Paravirtual, the same CR3 is used for
both guest and hypervisor at the same time, which in turn means that
they have to be in the same mode.

This is of course assuming there are no bugs in the Xen hypervisor or
tools that cause some particular combination(s) to be broken - but that
applies to all things working/not working!

[1] If you're really into how 32-bit/32-bit PAE/64-bit page-tables work,
you'll be aware that not ONLY CR3 is affecting the operation of the
page-tables, and as you may expect, the remaining registers that do
affect this are ALSO swapped during the transition from/to guest.

>
> If this is not documented somewhere, maybe folks on this list wouldn't
> mind replying with any knowledge they may have.  For example, if you
> know one works because you've tried it yourself, or you know one
> doesn't because it's excluded by some architectural design decision,
> or whatever.

I'm not sure if it's documented "properly" somewhere, but certainly it
has been discussed previously.

--
Mats

My experience with Suse 10.1 64 bit Dom0 (I think) and Windows 64 bit HVM is that it doesn't work with Xen 3.0.2.

Anybody know better?

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


 


Rackspace

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