Andrew
2005-Dec-26 22:59 UTC
[xen-discuss] x86 and sparc virtualizability and Xen nestability
My understanding is that Intel and AMD, with their Vanderpool and Pacifica x86 extensions, are fixing the design flaw in the x86 architecture (some sensitive instructions which couldn''t be trapped) which prevented x86 from being fully virtualizable, i.e. which prevented the architecture from satisfying the Popek and Goldberg virtualization requirements. (And while they''re at it they''re also modifying the design to make virtualization not only possible but also fast.) See http://en.wikipedia.org/wiki/Popek_and_Goldberg_virtualization_requirements for details. Can anybody confirm that with the extensions, x86 does in fact satisfy the requirements? Which leads to another question (even though Xen doesn''t run on sparc): does sparc satisfy the requirements? And a third question: if x86 with the extensions does satisfy the requirements, then it also automatically supports virtual machine nesting, assuming that the hypervisor is designed to support that feature. So, will Xen support nesting on such processors? This message posted from opensolaris.org
Mark Williamson
2006-Jan-04 04:29 UTC
[xen-discuss] Re: x86 and sparc virtualizability and Xen nestability
Both Vanderpool and Pacifica do allow you to trap (or have the machine handle) all the instructions that were problematic before (and also include virtualisation-related performance enhancements). The question is, whether the new VT/SVM instructions can also be trapped... This is certainly true in Pacifica, the Vanderpool documentation doesn''t state it explicitly but I''d be surprised if Intel were insane enough for it not to be the case there also! Virtual machines provided by Xen 3.0 are *not* Vanderpool / Pacifica capable. You could run non-Vanderpool (or Pacifica) Xen under Xen on Vanderpool / Pacifica hardware - that should work now, if you have the relevant kit. What isn''t yet possible is running a Vanderpool (or Pacifica) Xen, inside another Vanderpool (or Pacifica) Xen, for arbitrary nesting, since Xen doesn''t emulate the additional instructions required. It''s technically possible to provide Vanderpool / Pacifica capabilities to guest virtual machines, so this may be added at a later date. (side note: questions that aren''t Sun-specific are also worth asking on the Xen mailing lists) This message posted from opensolaris.org