aboutsummaryrefslogtreecommitdiffstats
path: root/xen/include/asm-x86/trace.h
diff options
context:
space:
mode:
authorKeir Fraser <keir@xensource.com>2007-10-12 13:06:02 +0100
committerKeir Fraser <keir@xensource.com>2007-10-12 13:06:02 +0100
commit06a73c9f9380bba455cbf1a5502b902d01a5dc3f (patch)
tree56e70068152a5fb6d4a893a15c3cf4449549d919 /xen/include/asm-x86/trace.h
parent70c2e55854116bee937026175e54985a73f159fa (diff)
downloadxen-06a73c9f9380bba455cbf1a5502b902d01a5dc3f.tar.gz
xen-06a73c9f9380bba455cbf1a5502b902d01a5dc3f.tar.bz2
xen-06a73c9f9380bba455cbf1a5502b902d01a5dc3f.zip
xentrace/x86: PV guest tracing extensions.
From: George Dunlap <gdunlap@xensource.com> Signed-off-by: Keir Fraser <keir@xensource.com>
Diffstat (limited to 'xen/include/asm-x86/trace.h')
-rw-r--r--xen/include/asm-x86/trace.h46
1 files changed, 46 insertions, 0 deletions
diff --git a/xen/include/asm-x86/trace.h b/xen/include/asm-x86/trace.h
new file mode 100644
index 0000000000..c8b13c4b86
--- /dev/null
+++ b/xen/include/asm-x86/trace.h
@@ -0,0 +1,46 @@
+#ifndef __ASM_TRACE_H__
+#define __ASM_TRACE_H__
+
+#include <asm/page.h>
+
+void __trace_pv_trap(int trapnr, unsigned long eip,
+ int use_error_code, unsigned error_code);
+static inline void trace_pv_trap(int trapnr, unsigned long eip,
+ int use_error_code, unsigned error_code)
+{
+ if ( tb_init_done )
+ __trace_pv_trap(trapnr, eip, use_error_code, error_code);
+}
+
+void __trace_pv_page_fault(unsigned long addr, unsigned error_code);
+static inline void trace_pv_page_fault(unsigned long addr,
+ unsigned error_code)
+{
+ if ( tb_init_done )
+ __trace_pv_page_fault(addr, error_code);
+}
+
+void __trace_trap_one_addr(unsigned event, unsigned long va);
+static inline void trace_trap_one_addr(unsigned event, unsigned long va)
+{
+ if ( tb_init_done )
+ __trace_trap_one_addr(event, va);
+}
+
+void __trace_trap_two_addr(unsigned event, unsigned long va1,
+ unsigned long va2);
+static inline void trace_trap_two_addr(unsigned event, unsigned long va1,
+ unsigned long va2)
+{
+ if ( tb_init_done )
+ __trace_trap_two_addr(event, va1, va2);
+}
+
+void __trace_ptwr_emulation(unsigned long addr, l1_pgentry_t npte);
+static inline void trace_ptwr_emulation(unsigned long addr, l1_pgentry_t npte)
+{
+ if ( tb_init_done )
+ __trace_ptwr_emulation(addr, npte);
+}
+
+#endif /* __ASM_TRACE_H__ */