aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorBjoern Brandenburg <bbb@mpi-sws.org>2015-12-30 09:59:07 -0500
committerBjoern Brandenburg <bbb@mpi-sws.org>2016-03-08 11:00:48 -0500
commit017b98154f755a5e3c7fd6299e741f7858b55147 (patch)
tree2eb3d8c5b092a5a2c03b66ce68239bf418324720
parent033c51950c1c1385292a7b8bbe52d396bc41aaeb (diff)
Support new event IDs
...XCALL, SEND_XCALL, SCHED_TIMER, and TIMER_LATENCY.
-rwxr-xr-xft-trace-overheads6
-rw-r--r--include/timestamp.h9
-rw-r--r--src/timestamp.c4
3 files changed, 16 insertions, 3 deletions
diff --git a/ft-trace-overheads b/ft-trace-overheads
index f651f50..280588d 100755
--- a/ft-trace-overheads
+++ b/ft-trace-overheads
@@ -64,16 +64,16 @@ shift
64[ -z "${NAME}" ] && die "No name specified. Run as 'ft-trace-overheads <NAME>'." 64[ -z "${NAME}" ] && die "No name specified. Run as 'ft-trace-overheads <NAME>'."
65 65
66 66
67SCHED_EVENTS="SCHED2 SCHED CXS TICK RELEASE" 67SCHED_EVENTS="SCHED2 SCHED CXS TICK RELEASE XCALL SCHED_TIMER"
68 68
69CPU_EVENTS= 69CPU_EVENTS=
70for x in $SCHED_EVENTS 70for x in $SCHED_EVENTS
71do 71do
72 CPU_EVENTS="$CPU_EVENTS ${x}_END ${x}_START" 72 CPU_EVENTS="$CPU_EVENTS ${x}_END ${x}_START"
73done 73done
74CPU_EVENTS="$CPU_EVENTS RELEASE_LATENCY" 74CPU_EVENTS="$CPU_EVENTS RELEASE_LATENCY TIMER_LATENCY"
75 75
76IPI_EVENTS="SEND_RESCHED" 76IPI_EVENTS="SEND_RESCHED SEND_XCALL"
77MSG_EVENTS= 77MSG_EVENTS=
78for x in $IPI_EVENTS 78for x in $IPI_EVENTS
79do 79do
diff --git a/include/timestamp.h b/include/timestamp.h
index b7b79c4..40050f7 100644
--- a/include/timestamp.h
+++ b/include/timestamp.h
@@ -74,11 +74,17 @@ const char* task_type2str(int task_type);
74#define TS_RELEASE_START TIMESTAMP(106) 74#define TS_RELEASE_START TIMESTAMP(106)
75#define TS_RELEASE_END TIMESTAMP(107) 75#define TS_RELEASE_END TIMESTAMP(107)
76 76
77#define TS_XCALL_START TIMESTAMP(108)
78#define TS_XCALL_END TIMESTAMP(109)
79
77#define TS_TICK_START TIMESTAMP(110) 80#define TS_TICK_START TIMESTAMP(110)
78#define TS_TICK_END TIMESTAMP(111) 81#define TS_TICK_END TIMESTAMP(111)
79#define TS_QUANTUM_BOUNDARY_START TIMESTAMP(112) 82#define TS_QUANTUM_BOUNDARY_START TIMESTAMP(112)
80#define TS_QUANTUM_BOUNDARY_END TIMESTAMP(113) 83#define TS_QUANTUM_BOUNDARY_END TIMESTAMP(113)
81 84
85#define TS_SCHED_TIMER_START TIMESTAMP(114)
86#define TS_SCHED_TIMER_END TIMESTAMP(115)
87
82#define TS_PLUGIN_SCHED_START TIMESTAMP(120) 88#define TS_PLUGIN_SCHED_START TIMESTAMP(120)
83#define TS_PLUGIN_SCHED_END TIMESTAMP(121) 89#define TS_PLUGIN_SCHED_END TIMESTAMP(121)
84 90
@@ -87,9 +93,12 @@ const char* task_type2str(int task_type);
87 93
88#define TS_SEND_RESCHED_START TIMESTAMP(190) 94#define TS_SEND_RESCHED_START TIMESTAMP(190)
89#define TS_SEND_RESCHED_END TIMESTAMP(191) 95#define TS_SEND_RESCHED_END TIMESTAMP(191)
96#define TS_SEND_XCALL_START TIMESTAMP(192)
97#define TS_SEND_XCALL_END TIMESTAMP(193)
90 98
91#define SINGLE_RECORDS_RANGE 200 99#define SINGLE_RECORDS_RANGE 200
92 100
93#define TS_RELEASE_LATENCY TIMESTAMP(208) 101#define TS_RELEASE_LATENCY TIMESTAMP(208)
102#define TS_TIMER_LATENCY TIMESTAMP(209)
94 103
95#endif 104#endif
diff --git a/src/timestamp.c b/src/timestamp.c
index 72ba9b4..581edc2 100644
--- a/src/timestamp.c
+++ b/src/timestamp.c
@@ -19,11 +19,15 @@ static struct event_name event_table[] =
19 EVENT(TICK), 19 EVENT(TICK),
20 EVENT(QUANTUM_BOUNDARY), 20 EVENT(QUANTUM_BOUNDARY),
21 EVENT(RELEASE), 21 EVENT(RELEASE),
22 EVENT(XCALL),
23 EVENT(SCHED_TIMER),
22 EVENT(PLUGIN_SCHED), 24 EVENT(PLUGIN_SCHED),
23 EVENT(PLUGIN_TICK), 25 EVENT(PLUGIN_TICK),
24 EVENT(CXS), 26 EVENT(CXS),
25 EVENT(SEND_RESCHED), 27 EVENT(SEND_RESCHED),
28 EVENT(SEND_XCALL),
26 {"RELEASE_LATENCY", TS_RELEASE_LATENCY}, 29 {"RELEASE_LATENCY", TS_RELEASE_LATENCY},
30 {"TIMER_LATENCY", TS_TIMER_LATENCY},
27 31
28 EVENT(SYSCALL_IN), 32 EVENT(SYSCALL_IN),
29 EVENT(SYSCALL_OUT), 33 EVENT(SYSCALL_OUT),