]> xenbits.xensource.com Git - people/aperard/xen-unstable.git/commit
nestedsvm: Support TSC Rate MSR
authorChristoph Egger <Christoph.Egger@amd.com>
Sat, 16 Jul 2011 08:23:22 +0000 (09:23 +0100)
committerChristoph Egger <Christoph.Egger@amd.com>
Sat, 16 Jul 2011 08:23:22 +0000 (09:23 +0100)
commitfd14a1943c43c3c898711fa8f3f1ea9017da87d0
tree0171c5383414aae3f29d0cb461103606c38ae382
parent68b5b855954787fedc8b03a2fdb6ebedfe07d366
nestedsvm: Support TSC Rate MSR

Support TSC Rate MSR and enable TSC scaling for
nested virtualization.

With it, guest VMs don't need take #VMEXIT to calculate a translated
TSC value when it is running under TSC emulation mode.

I measured native performance of the rdtsc instruction
in the l2 guest with xen-on-xen and both host and
and l1 guest run under TSC emulation mode.

TSC scaling just needs MSR emulation and correct tsc offset
calculation to be done and thus can be emulated also on older
hardware. In this case rdtsc instruction is intercepted and
handled by the host directly and safes the cost of a full
VMRUN/VMEXIT emulation cycle.

Signed-off-by: Christoph Egger <Christoph.Egger@amd.com>
tools/libxc/xc_cpuid_x86.c
xen/arch/x86/hvm/svm/nestedsvm.c
xen/arch/x86/hvm/svm/svm.c
xen/include/asm-x86/hvm/svm/nestedsvm.h