blob: 862b2cc12fbe4efddd5900c997538fc91927d300 [file] [log] [blame]
Christoffer Dall749cf76c2013-01-20 18:28:06 -05001#if !defined(_TRACE_KVM_H) || defined(TRACE_HEADER_MULTI_READ)
2#define _TRACE_KVM_H
3
4#include <linux/tracepoint.h>
5
6#undef TRACE_SYSTEM
7#define TRACE_SYSTEM kvm
8
9/*
10 * Tracepoints for entry/exit to guest
11 */
12TRACE_EVENT(kvm_entry,
13 TP_PROTO(unsigned long vcpu_pc),
14 TP_ARGS(vcpu_pc),
15
16 TP_STRUCT__entry(
17 __field( unsigned long, vcpu_pc )
18 ),
19
20 TP_fast_assign(
21 __entry->vcpu_pc = vcpu_pc;
22 ),
23
24 TP_printk("PC: 0x%08lx", __entry->vcpu_pc)
25);
26
27TRACE_EVENT(kvm_exit,
28 TP_PROTO(unsigned long vcpu_pc),
29 TP_ARGS(vcpu_pc),
30
31 TP_STRUCT__entry(
32 __field( unsigned long, vcpu_pc )
33 ),
34
35 TP_fast_assign(
36 __entry->vcpu_pc = vcpu_pc;
37 ),
38
39 TP_printk("PC: 0x%08lx", __entry->vcpu_pc)
40);
41
Christoffer Dalld5d81842013-01-20 18:28:07 -050042TRACE_EVENT(kvm_unmap_hva,
43 TP_PROTO(unsigned long hva),
44 TP_ARGS(hva),
Christoffer Dall749cf76c2013-01-20 18:28:06 -050045
Christoffer Dalld5d81842013-01-20 18:28:07 -050046 TP_STRUCT__entry(
47 __field( unsigned long, hva )
48 ),
49
50 TP_fast_assign(
51 __entry->hva = hva;
52 ),
53
54 TP_printk("mmu notifier unmap hva: %#08lx", __entry->hva)
55);
56
57TRACE_EVENT(kvm_unmap_hva_range,
58 TP_PROTO(unsigned long start, unsigned long end),
59 TP_ARGS(start, end),
60
61 TP_STRUCT__entry(
62 __field( unsigned long, start )
63 __field( unsigned long, end )
64 ),
65
66 TP_fast_assign(
67 __entry->start = start;
68 __entry->end = end;
69 ),
70
71 TP_printk("mmu notifier unmap range: %#08lx -- %#08lx",
72 __entry->start, __entry->end)
73);
74
75TRACE_EVENT(kvm_set_spte_hva,
76 TP_PROTO(unsigned long hva),
77 TP_ARGS(hva),
78
79 TP_STRUCT__entry(
80 __field( unsigned long, hva )
81 ),
82
83 TP_fast_assign(
84 __entry->hva = hva;
85 ),
86
87 TP_printk("mmu notifier set pte hva: %#08lx", __entry->hva)
88);
Christoffer Dall749cf76c2013-01-20 18:28:06 -050089
90#endif /* _TRACE_KVM_H */
91
92#undef TRACE_INCLUDE_PATH
93#define TRACE_INCLUDE_PATH arch/arm/kvm
94#undef TRACE_INCLUDE_FILE
95#define TRACE_INCLUDE_FILE trace
96
97/* This part must be outside protection */
98#include <trace/define_trace.h>