[PATCH 0/3] Nested TSC handling

Nadav Har'El
2011-08-02T12:54:08Z

The following are patches I propose for fixing the bug discovered by Bandan
Das and discussed in the "Nested VMX - L1 hangs on running L2" thread.

The first patch should fix the originally-reported bug, as explained in the
aforementioned thread: A new x86_op read_l1_tsc() is called L1's TSC is
needed, instead of assuming that calling kvm_read_msr() will do that
(because this has to return L2's TSC when a nested guest is running).

The second and third patches fix relatively-unimportant corner cases in
nested VMX and nested SVM TSC handling.

I'd appreciate it if the people who noticed this bug can verify that these
patches indeed solve it for them.

Patch statistics:
-----------------

arch/x86/include/asm/kvm_host.h | 2 +
arch/x86/kvm/svm.c | 13 ++++++--
arch/x86/kvm/vmx.c | 48 +++++++++++++++++++++++-------
arch/x86/kvm/x86.c | 8 ++---
4 files changed, 54 insertions(+), 17 deletions(-)

--
Nadav Har'El
IBM Haifa Research Lab