summaryrefslogtreecommitdiffstats
path: root/kernel/arch/x86/xen/trace.c
diff options
context:
space:
mode:
Diffstat (limited to 'kernel/arch/x86/xen/trace.c')
-rw-r--r--kernel/arch/x86/xen/trace.c20
1 files changed, 20 insertions, 0 deletions
diff --git a/kernel/arch/x86/xen/trace.c b/kernel/arch/x86/xen/trace.c
new file mode 100644
index 000000000..a702ec2f5
--- /dev/null
+++ b/kernel/arch/x86/xen/trace.c
@@ -0,0 +1,20 @@
+#include <linux/ftrace.h>
+#include <xen/interface/xen.h>
+#include <xen/interface/xen-mca.h>
+
+#define HYPERCALL(x) [__HYPERVISOR_##x] = "("#x")",
+static const char *xen_hypercall_names[] = {
+#include <asm/xen-hypercalls.h>
+};
+#undef HYPERCALL
+
+static const char *xen_hypercall_name(unsigned op)
+{
+ if (op < ARRAY_SIZE(xen_hypercall_names) && xen_hypercall_names[op] != NULL)
+ return xen_hypercall_names[op];
+
+ return "";
+}
+
+#define CREATE_TRACE_POINTS
+#include <trace/events/xen.h>