xen-devel.lists.xenproject.org archive mirror
 help / color / mirror / Atom feed
* [PATCH 00/17][RFC] Nested virtualization for VMX
@ 2010-04-22  9:41 Qing He
  2010-04-22  9:41 ` [PATCH 01/17] vmx: nest: fix CR4.VME in update_guest_cr Qing He
                   ` (17 more replies)
  0 siblings, 18 replies; 51+ messages in thread
From: Qing He @ 2010-04-22  9:41 UTC (permalink / raw)
  To: xen-devel


This patch set enables nested virtualization for VMX, That
is to allow a VMX guest (L1) to run other VMX guests (L2).

The patch can generally run on different configurations:
  - EPT-on-EPT, shadow-on-EPT, shadow-on-shadow
  - different 32/64 combination of L1 and L2
  - L1/L2 SMP

EPT-on-EPT is however, preferrable due to performance
advantage, I've tested the patch on a 64bit NHM L0,
against Xen cs.  21190. With EPT-on-EPT and a a kernel
build workload, L2 needs around 17% more time to complete.


Known problems:
  - L1/L2=64/64, shadow-on-shadow doesn't work as for now
  - On 21190, even without nested patchset, Xen as L1
    suffers a considerable booting lag, this phenomenon
    was not observed on my previous base, around cs.
    20200
  - multiple L2 in one L1 hasn't been tested


The patch list is as below, it contains 3 preparation
patches (01 -- 03), 11 generic patches (04 -- 14), 1 to
enable EPT-on-EPT (15), and 2 support patches (16, 17).

[PATCH 01/17] vmx: nest: fix CR4.VME in update_guest_cr
[PATCH 02/17] vmx: nest: rename host_vmcs
[PATCH 03/17] vmx: nest: wrapper for control update
[PATCH 04/17] vmx: nest: domain and vcpu flags
[PATCH 05/17] vmx: nest: nested control structure
[PATCH 06/17] vmx: nest: virtual vmcs layout
[PATCH 07/17] vmx: nest: handling VMX instruction exits
[PATCH 08/17] vmx: nest: L1 <-> L2 context switch
[PATCH 09/17] vmx: nest: interrupt
[PATCH 10/17] vmx: nest: VMExit handler in L2
[PATCH 11/17] vmx: nest: L2 tsc
[PATCH 12/17] vmx: nest: CR0.TS and #NM
[PATCH 13/17] vmx: nest: capability reporting MSRs
[PATCH 14/17] vmx: nest: enable virtual VMX
[PATCH 15/17] vmx: nest: virtual ept for nested
[PATCH 16/17] vmx: nest: hvmtrace for nested
[PATCH 17/17] tools: nest: allow enabling nesting

Thanks,
Qing He

^ permalink raw reply	[flat|nested] 51+ messages in thread

end of thread, other threads:[~2010-05-25 16:02 UTC | newest]

Thread overview: 51+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2010-04-22  9:41 [PATCH 00/17][RFC] Nested virtualization for VMX Qing He
2010-04-22  9:41 ` [PATCH 01/17] vmx: nest: fix CR4.VME in update_guest_cr Qing He
2010-05-20  9:26   ` Tim Deegan
2010-05-20  9:36     ` Qing He
2010-04-22  9:41 ` [PATCH 02/17] vmx: nest: rename host_vmcs Qing He
2010-04-22  9:41 ` [PATCH 03/17] vmx: nest: wrapper for control update Qing He
2010-05-20  9:34   ` Tim Deegan
2010-05-20  9:46     ` Qing He
2010-05-20 12:57       ` Keir Fraser
2010-04-22  9:41 ` [PATCH 04/17] vmx: nest: domain and vcpu flags Qing He
2010-05-20  9:37   ` Tim Deegan
2010-05-20  9:51     ` Christoph Egger
2010-05-20  9:54     ` Qing He
2010-05-20 10:55       ` Tim Deegan
2010-05-20 12:53         ` Qing He
2010-05-20 14:06           ` Christoph Egger
2010-04-22  9:41 ` [PATCH 05/17] vmx: nest: nested control structure Qing He
2010-04-22  9:41 ` [PATCH 06/17] vmx: nest: virtual vmcs layout Qing He
2010-04-22  9:41 ` [PATCH 07/17] vmx: nest: handling VMX instruction exits Qing He
2010-05-20 10:53   ` Tim Deegan
2010-05-20 13:28     ` Qing He
2010-04-22  9:41 ` [PATCH 08/17] vmx: nest: L1 <-> L2 context switch Qing He
2010-05-20 11:11   ` Tim Deegan
2010-05-20 13:49     ` Qing He
2010-05-21  9:19       ` Tim Deegan
2010-05-21 10:31         ` Qing He
2010-05-25 15:27           ` Tim Deegan
2010-04-22  9:41 ` [PATCH 09/17] vmx: nest: interrupt Qing He
2010-05-20 11:21   ` Tim Deegan
2010-05-20 15:55     ` Qing He
2010-04-22  9:41 ` [PATCH 10/17] vmx: nest: VMExit handler in L2 Qing He
2010-05-20 11:44   ` Tim Deegan
2010-05-20 16:06     ` Qing He
2010-05-21  8:42       ` Tim Deegan
2010-05-21 10:35         ` Qing He
2010-05-25 15:34           ` Tim Deegan
2010-04-22  9:41 ` [PATCH 11/17] vmx: nest: L2 tsc Qing He
2010-05-20 11:47   ` Tim Deegan
2010-05-20 16:07     ` Qing He
2010-04-22  9:41 ` [PATCH 12/17] vmx: nest: CR0.TS and #NM Qing He
2010-04-22  9:41 ` [PATCH 13/17] vmx: nest: capability reporting MSRs Qing He
2010-05-20 11:52   ` Tim Deegan
2010-04-22  9:41 ` [PATCH 14/17] vmx: nest: enable virtual VMX Qing He
2010-04-22  9:41 ` [PATCH 15/17] vmx: nest: virtual ept for nested Qing He
2010-05-20 12:21   ` Tim Deegan
2010-05-21 10:24     ` Qing He
2010-05-25 16:02       ` Tim Deegan
2010-04-22  9:41 ` [PATCH 16/17] vmx: nest: hvmtrace " Qing He
2010-04-22  9:41 ` [PATCH 17/17] tools: nest: allow enabling nesting Qing He
2010-04-22 10:15 ` [PATCH 00/17][RFC] Nested virtualization for VMX Christoph Egger
2010-04-23 10:10   ` He, Qing

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).