Reinstate MSR tracing, add RDTSC tracing _______________________________________________ Xen-devel mailing list Xen-devel@lists.xensource.com http://lists.xensource.com/xen-devel
George Dunlap
2010-Jul-08 16:33 UTC
[Xen-devel] [PATCH 1 of 2] trace: Reinstate tracing for emualted MSR reads and writes
Signed-off-by: George Dunlap <george.dunlap@eu.citrix.com> diff -r 9d965ac1b0db -r be013c2c88d7 xen/arch/x86/hvm/hvm.c --- a/xen/arch/x86/hvm/hvm.c Mon Jul 05 08:40:26 2010 +0100 +++ b/xen/arch/x86/hvm/hvm.c Thu Jul 08 17:32:51 2010 +0100 @@ -2103,6 +2103,8 @@ } } + HVMTRACE_3D(MSR_READ, (uint32_t)*msr_content, (uint32_t)(*msr_content >> 32), msr); + return X86EMUL_OKAY; gp_fault: @@ -2117,6 +2119,8 @@ uint32_t cpuid[4]; int ret; + HVMTRACE_3D(MSR_WRITE, (uint32_t)msr_content, (uint32_t)(msr_content >> 32), msr); + hvm_cpuid(1, &cpuid[0], &cpuid[1], &cpuid[2], &cpuid[3]); mtrr = !!(cpuid[3] & bitmaskof(X86_FEATURE_MTRR)); _______________________________________________ Xen-devel mailing list Xen-devel@lists.xensource.com http://lists.xensource.com/xen-devel
George Dunlap
2010-Jul-08 16:33 UTC
[Xen-devel] [PATCH 2 of 2] trace: Trace emulated RDTSC values
Signed-off-by: George Dunlap <george.dunlap@eu.citrix.com> diff -r be013c2c88d7 -r 747f73b62c51 xen/arch/x86/hvm/hvm.c --- a/xen/arch/x86/hvm/hvm.c Thu Jul 08 17:32:51 2010 +0100 +++ b/xen/arch/x86/hvm/hvm.c Thu Jul 08 17:32:51 2010 +0100 @@ -2011,6 +2011,8 @@ tsc = hvm_get_guest_tsc(v); regs->eax = (uint32_t)tsc; regs->edx = (uint32_t)(tsc >> 32); + + HVMTRACE_2D(RDTSC, regs->eax, regs->edx); } int hvm_msr_read_intercept(unsigned int msr, uint64_t *msr_content) diff -r be013c2c88d7 -r 747f73b62c51 xen/include/asm-x86/hvm/trace.h --- a/xen/include/asm-x86/hvm/trace.h Thu Jul 08 17:32:51 2010 +0100 +++ b/xen/include/asm-x86/hvm/trace.h Thu Jul 08 17:32:51 2010 +0100 @@ -35,6 +35,7 @@ #define DO_TRC_HVM_DR_WRITE DEFAULT_HVM_REGACCESS #define DO_TRC_HVM_MSR_READ DEFAULT_HVM_REGACCESS #define DO_TRC_HVM_MSR_WRITE DEFAULT_HVM_REGACCESS +#define DO_TRC_HVM_RDTSC DEFAULT_HVM_REGACCESS #define DO_TRC_HVM_CPUID DEFAULT_HVM_MISC #define DO_TRC_HVM_INTR DEFAULT_HVM_INTR #define DO_TRC_HVM_NMI DEFAULT_HVM_INTR diff -r be013c2c88d7 -r 747f73b62c51 xen/include/public/trace.h --- a/xen/include/public/trace.h Thu Jul 08 17:32:51 2010 +0100 +++ b/xen/include/public/trace.h Thu Jul 08 17:32:51 2010 +0100 @@ -156,6 +156,7 @@ #define TRC_HVM_CLTS (TRC_HVM_HANDLER + 0x18) #define TRC_HVM_LMSW (TRC_HVM_HANDLER + 0x19) #define TRC_HVM_LMSW64 (TRC_HVM_HANDLER + TRC_64_FLAG + 0x19) +#define TRC_HVM_RDTSC (TRC_HVM_HANDLER + 0x1a) #define TRC_HVM_INTR_WINDOW (TRC_HVM_HANDLER + 0x20) #define TRC_HVM_NPF (TRC_HVM_HANDLER + 0x21) _______________________________________________ Xen-devel mailing list Xen-devel@lists.xensource.com http://lists.xensource.com/xen-devel