On 2015-01-13 14:43, Paolo Bonzini wrote: > > > On 13/01/2015 14:19, Huaicheng Li wrote: >> Hi, all >> >> I have a Linux 3.8 kernel (host) and run QEMU 1.5.3 on it. I want to >> test another hypervisor software in qemu so I enabled KVM's nested VMX >> function(by passing "nested=1" parameter to the kvm module) and then >> started a guest machine. In the guest, I could see the "vmx" instruction >> set by reading /proc/cpuinfo and the kvm module can be correctly >> inserted. But when I read the value of the IA32_FEATURE_CONTROL MSR >> using msr-tools, it showed _0_, but the correct value should be _5_, >> since bit 0(virtualization lock bit) and bit 2 of that MSR must be set >> to enable the virtualization functionality. But in my vmware workstation >> guest with nested virtualization enabled, the value of that MSR is, >> indeed, _5_ as well as in the physical machine (of course). Here, I want >> to ask >> >> * Am I missing anything in my operation to totally enable the nested >> virtualization function ?? (I googled a lot and it seemed there were no >> additional steps) > > You have an old kernel. IA32_FEATURE_CONTROL MSR emulation was added in > 3.12.
...and lots of other nvmx bugs were fixed afterwards. If you don't want to debug KVM but your hypervisor, use the latest stable kernel, currently 3.18.2. Jan -- Siemens AG, Corporate Technology, CT RTC ITP SES-DE Corporate Competence Center Embedded Linux