trace: Trace emulated RDTSC values
authorKeir Fraser <keir.fraser@citrix.com>
Fri, 9 Jul 2010 11:28:03 +0000 (12:28 +0100)
committerKeir Fraser <keir.fraser@citrix.com>
Fri, 9 Jul 2010 11:28:03 +0000 (12:28 +0100)
Signed-off-by: George Dunlap <george.dunlap@eu.citrix.com>
xen/arch/x86/hvm/hvm.c
xen/include/asm-x86/hvm/trace.h
xen/include/public/trace.h

index 7e9006c169e35edb1c0399f0358d1138cd61c4af..b07493b9b9ea5a8dc1b8de5966b67d00bb1617f7 100644 (file)
@@ -2011,6 +2011,8 @@ void hvm_rdtsc_intercept(struct cpu_user_regs *regs)
     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)
index 9b0b7fd7a9df19679c0ef2e85f8432c4900890ca..dcc0ae0ecae0793e3a2b814e374e2d06903b0529 100644 (file)
@@ -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
index c762c1858a5504d026010173ab6d75cee0aeb20c..a83ce80dd466606550df22b2506180721d3eba47 100644 (file)
 #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)