3 # -*- coding: utf-8 -*-
7 class tracepoint(perf
.evsel
):
8 def __init__(self
, sys
, name
):
9 config
= perf
.tracepoint(sys
, name
)
10 perf
.evsel
.__init
__(self
,
11 type = perf
.TYPE_TRACEPOINT
,
13 freq
= 0, sample_period
= 1, wakeup_events
= 1,
14 sample_type
= perf
.SAMPLE_PERIOD | perf
.SAMPLE_TID | perf
.SAMPLE_CPU | perf
.SAMPLE_RAW | perf
.SAMPLE_TIME
)
17 tp
= tracepoint("sched", "sched_switch")
19 threads
= perf
.thread_map(-1)
21 evlist
= perf
.evlist(cpus
, threads
)
27 evlist
.poll(timeout
= -1)
29 event
= evlist
.read_on_cpu(cpu
)
33 if not isinstance(event
, perf
.sample_event
):
36 print "time %u prev_comm=%s prev_pid=%d prev_prio=%d prev_state=0x%x ==> next_comm=%s next_pid=%d next_prio=%d" % (
46 if __name__
== '__main__':