David Hildenbrand <david@xxxxxxxxxx> writes: > On 16.01.2018 13:05, Vitaly Kuznetsov wrote: >> Wanpeng Li <kernellwp@xxxxxxxxx> writes: >> >>> 2018-01-16 1:30 GMT+08:00 Vitaly Kuznetsov <vkuznets@xxxxxxxxxx>: >>>> Early RFC. I'll refer to this patchset in my DevConf/FOSDEM >>>> presentations. >>>> >>>> When running nested KVM on Hyper-V it's possible to use so called >>>> 'Enlightened VMCS' and do normal memory reads/writes instead of >>>> doing VMWRITE/VMREAD instructions. Tests show that this speeds up >>>> tight CPUID loop almost 3 times: >>>> >>>> Before: >>>> ./cpuid_tight >>>> 20459 >>>> >>>> After: >>>> ./cpuid_tight >>>> 7698 >>> >>> Maybe you can apply a similar idea to kvm nested on kvm. >>> >> >> Yes we can. Basically, that would mean directly accessing 'struct >> vmcs12' from L1 hypervisor. >> > > Haven't looked into the details, but we have to watch out for other > VCPUs trying to modify that vmcs12. > > Basically because other VCPUs could try to modify values in vmcs12 while > we are currently building vmcs02. Nasty races could result in us copying > stuff (probably unchecked) into vmcs02 and therefore running something > that was not intended. > I don't think we share VMCS among vCPUs, do we? -- Vitaly