Re: Nested VMX - L1 hangs on running L2

2011-07-31 Thread Nadav Har'El
On Fri, Jul 29, 2011, Zachary Amsden wrote about Re: Nested VMX - L1 hangs on running L2: ... In that case, you need to distinguish between reads of the TSC MSR by the guest and reads by the host (as done internally to track drift and ... Unfortunately, the layering currently doesn't seem

Re: Nested VMX - L1 hangs on running L2

2011-07-31 Thread Zachary Amsden
, Jul 29, 2011, Zachary Amsden wrote about Re: Nested VMX - L1 hangs on running L2: ... In that case, you need to distinguish between reads of the TSC MSR by the guest and reads by the host (as done internally to track drift and ... Unfortunately, the layering currently doesn't seem to allow

Re: Nested VMX - L1 hangs on running L2

2011-07-31 Thread Nadav Har'El
On Sun, Jul 31, 2011, Zachary Amsden wrote about Re: Nested VMX - L1 hangs on running L2: This patch looks good, with one comment noted inline below. Are there no other call sites for kvm_get_msr() or which alias some other function to kvm_get_msr(MSR_IA32_TSC) ? This is all I found

Re: Nested VMX - L1 hangs on running L2

2011-07-29 Thread Zachary Amsden
2011/7/27 Nadav Har'El n...@math.technion.ac.il: On Wed, Jul 20, 2011, Zachary Amsden wrote about Re: Nested VMX - L1 hangs on running L2: No, both patches are wrong. kvm_get_msr(vcpu, MSR_IA32_TSC, tsc) should always return the L1 TSC, regardless of the setting of any MSR bitmap

Re: Nested VMX - L1 hangs on running L2

2011-07-29 Thread Roedel, Joerg
On Fri, Jul 29, 2011 at 05:01:16AM -0400, Zachary Amsden wrote: So you are right, this is still wrong for the case in which L1 does not trap TSC MSR reads. Note however, the RDTSC instruction is still virtualized properly, it is only the relatively rare actual TSC MSR read via RDMSR which is

Re: Nested VMX - L1 hangs on running L2

2011-07-28 Thread Nadav Har'El
On Wed, Jul 20, 2011, Zachary Amsden wrote about Re: Nested VMX - L1 hangs on running L2: No, both patches are wrong. The correct fix is to make kvm_get_msr() return the L1 guest TSC at all times.  We are serving the L1 guest in this hypervisor, not the L2 guest, and so should

Re: Nested VMX - L1 hangs on running L2

2011-07-28 Thread Matt McGill
should be. -Matt McGill On Jul 28, 2011, at 7:11 AM, Nadav Har'El wrote: On Wed, Jul 20, 2011, Zachary Amsden wrote about Re: Nested VMX - L1 hangs on running L2: No, both patches are wrong. The correct fix is to make kvm_get_msr() return the L1 guest TSC at all times. We are serving the L1

Re: Nested VMX - L1 hangs on running L2

2011-07-27 Thread Nadav Har'El
On Wed, Jul 20, 2011, Zachary Amsden wrote about Re: Nested VMX - L1 hangs on running L2: No, both patches are wrong. kvm_get_msr(vcpu, MSR_IA32_TSC, tsc) should always return the L1 TSC, regardless of the setting of any MSR bitmap. The reason why is that it is being called by the L0

Nested VMX - L1 hangs on running L2

2011-07-08 Thread Bandan Das
I have already discussed this a bit with Nadav but hoping someone else has any other ideas/clues/suggestions/comments. With recent versions of the kernel (The last I tried is 3.0-rc5 with nVMX patches already merged), my L1 guest always hangs when I start L2. My setup : The host, L1 and L2