Lines Matching refs:evsel
5 #include "../../../util/evsel.h"
30 static void mmio_event_get_key(struct evsel *evsel, struct perf_sample *sample,
33 key->key = evsel__intval(evsel, sample, "gpa");
34 key->info = evsel__intval(evsel, sample, "type");
41 static bool mmio_event_begin(struct evsel *evsel,
45 if (kvm_exit_event(evsel))
49 if (evsel__name_is(evsel, "kvm:kvm_mmio") &&
50 evsel__intval(evsel, sample, "type") == KVM_TRACE_MMIO_WRITE) {
51 mmio_event_get_key(evsel, sample, key);
58 static bool mmio_event_end(struct evsel *evsel, struct perf_sample *sample,
62 if (kvm_entry_event(evsel))
66 if (evsel__name_is(evsel, "kvm:kvm_mmio") &&
67 evsel__intval(evsel, sample, "type") == KVM_TRACE_MMIO_READ) {
68 mmio_event_get_key(evsel, sample, key);
92 static void ioport_event_get_key(struct evsel *evsel,
96 key->key = evsel__intval(evsel, sample, "port");
97 key->info = evsel__intval(evsel, sample, "rw");
100 static bool ioport_event_begin(struct evsel *evsel,
104 if (evsel__name_is(evsel, "kvm:kvm_pio")) {
105 ioport_event_get_key(evsel, sample, key);
112 static bool ioport_event_end(struct evsel *evsel,
116 return kvm_entry_event(evsel);
136 static void msr_event_get_key(struct evsel *evsel,
140 key->key = evsel__intval(evsel, sample, "ecx");
141 key->info = evsel__intval(evsel, sample, "write");
144 static bool msr_event_begin(struct evsel *evsel,
148 if (evsel__name_is(evsel, "kvm:kvm_msr")) {
149 msr_event_get_key(evsel, sample, key);
156 static bool msr_event_end(struct evsel *evsel,
160 return kvm_entry_event(evsel);