Webserver working for full website with LMP.
[barrelfish] / trace_definitions / trace_defs.pleco
1 /*
2  * Copyright (c) 2012-2013, ETH Zurich.
3  * All rights reserved.
4  *
5  * This file is distributed under the terms in the attached LICENSE file.
6  * If you do not find this file, copies can be found by writing to:
7  * ETH Zurich D-INFK, Haldeneggsteig 4, CH-8092 Zurich. Attn: Systems Group.
8 */
9 /*
10  * \brief Subsystem and Event definitions of the tracing framework.
11  *
12  * Events do always belong to their subsystem. Make sure that you only
13  * call trace_event() with matching subsystems, in order to be able to
14  * make reasonable use of Aquarium 2.
15  *
16  * Note: If you don't specify a verbose description of the event, the
17  * description will default to the name of the event.
18  *
19  * Example:
20  *
21  * The subystem:
22  *
23  * subsystem mysubsystem {
24  *              event myevent "",
25  * }
26  *
27  * will be compiled into the following two C macros:
28  *
29  * #define TRACE_SUBSYSTEM_MYSUBSYSTEM 1
30  * #define TRACE_EVENT_MYSUBSYSTEM_MYEVENT 1
31  *
32  * The pattern is that every subsystem is mapped to the concatentation of
33  * TRACE_SUBSYSTEM_ and its name in uppercase, and each event is mapped to
34  * the concatenation of TRACE_EVENT_ and the subsystem name in upper case,
35  * followed by a _ and the name of the event.
36  *
37 */
38
39 subsystem kernel {
40
41         event CSWITCH                           "Context Switch",
42         event BZERO                             "Buffer zeroing",
43         event TIMER                             "",
44         event TIMER_SYNC                        "",
45
46         event SCHED_MAKE_RUNNABLE       "",
47         event SCHED_REMOVE                      "",
48         event SCHED_YIELD                       "",
49         event SCHED_SCHEDULE            "",
50         event SCHED_CURRENT             "",
51
52 };
53
54 subsystem threads {
55
56     event BARRIER_ENTER                         "",
57     event BARRIER_LEAVE                         "",
58
59     event MUTEX_LOCK_ENTER                      "",
60     event MUTEX_LOCK_LEAVE                      "",
61     event MUTEX_LOCK_NESTED_ENTER       "",
62     event MUTEX_LOCK_NESTED_LEAVE       "",
63     event MUTEX_TRYLOCK                         "",
64     event MUTEX_UNLOCK                          "",
65
66     event COND_WAIT_ENTER                       "",
67     event COND_WAIT_LEAVE                       "",
68     event COND_SIGNAL                           "",
69     event COND_BROADCAST                        "",
70
71     event SEM_WAIT_ENTER                        "",
72     event SEM_WAIT_LEAVE                        "",
73     event SEM_TRYWAIT                           "",
74     event SEM_POST                              "",
75     event SYS_YIELD                             "Calling sys_yield for co-op scheduling",
76     event C_DISP_SAVE                           "calling disp_save",
77 };
78
79 subsystem memserv {
80
81     event ALLOC "",
82
83         event PERCORE_INIT                              "",
84         event PERCORE_ALLOC                     "",
85         event PERCORE_ALLOC_COMPLETE    "",
86 };
87
88 subsystem memtest {
89
90         event START                                     "",
91         event STOP                                      "",
92         event STARTED                           "",
93         event WAIT                                      "",
94         event RUN                                       "",
95         event DONE                                      "",
96         event ALLOC                             "",
97         event MASTER                            "",
98         event WORKER                            "",
99
100 };
101
102
103 subsystem monitor {
104  event SPAN0                                    "",
105  event SPAN1                                    "",
106  event SPAN                                             "",
107  event PCREQ                                    "",
108  event PCREP                                    "",
109  event PCREQ_INTER                              "",
110  event PCREPLY_INTER                    "",
111  event URPC_BLOCK                               "",
112  event URPC_UNBLOCK                             "",
113  event REMOTE_CAP_RETYPE                "",
114  event REMOTE_CAP_RETYPE_RETRY  "",
115  event REMOTE_CAP_RETYPE_MSG    "",
116  event REMOTE_CAP_RETYPE_END    "",
117  event POLLING                                  "",
118
119 };
120
121 subsystem chips {
122
123  event LISTENCB                                 "",
124
125 };
126
127 subsystem bflib {
128
129         // XXX: Empty subsystems are not allowed
130         event dummy                             "",
131
132 };
133
134
135 subsystem tweed {
136
137  event START                            "",
138  event END                                      "",
139  event STEAL                            "",
140  event STEAL_END                        "",
141  event WAIT                                     "",
142  event WAIT_END                         "",
143  event LOCKING                          "",
144  event LOCKING_END                      "",
145
146 };
147
148 subsystem route {
149
150  event BCAST_WITH_CCAST_SEND            "",
151  event BCAST_WITH_CCAST                         "",
152  event RECV_BCAST_WITH_CCAST            "",
153  event RECV_CCAST                                       "",
154  event BENCH_START                                      "",
155  event BENCH_STOP                                       "",
156  event SEND_PING                                        "",
157  event SEND_PONG                                        "",
158  event RECV_PING                                        "",
159  event RECV_PONG                                        "",
160  event POLL                                                     "",
161
162 };
163
164 subsystem bench {
165
166  event PCBENCH                          "",
167  event RXPING                           "",
168  event RXPONG                           "",
169
170 };
171
172 subsystem bomp {
173
174  event START                            "",
175  event STOP                                     "",
176  event ITER                                     "",
177
178 };
179
180 subsystem barriers {
181
182  event START                            "",
183  event STOP                                     "",
184  event BARRIER_WAIT                     "",
185  event CENTRAL_REQ                      "",
186  event CENTRAL_REP                      "",
187  event TREE_REQ                         "",
188  event TREE_REP                         "",
189  event DIST                                     "",
190  event SEND                                     "",
191  event POLL1                            "",
192  event POLL2                            "",
193  event HEAP_REQ                         "",
194  event HEAP_REP                         "",
195  event SEQ_BCAST_REQ            "",
196  event SEQ_BCAST_RECV           "",
197  event TREE_BCAST_REQ           "",
198  event TREE_BCAST_RECV          "",
199
200 };
201
202 /* Following constans are used for profiling modified stack */
203 subsystem nnet {
204
205  event START               "",
206  event STOP                "",
207  event RXESVAPPFDONE       "Ethersrv app filtered",
208
209  event RXDRVSEE            "Driver saw pkg (RX)",
210  event RXESVSEE            "Ethersrv saw pkg",
211  event RXESVFRGDONE        "Ethersrv checked frag",
212  event LWIPTX              "LWIP idc_send_packet_to_network_driver",
213  event SCHED_REMOVE        "Process marked non-runnable",
214  event IRQ                 "interrupt in kernelspace",
215  event UIRQ                "interrupt in kernelspace for userspace",
216  event NO_S                "e1000 packet send",
217  event NI_I                "e1000 interrupt arrived",
218
219  event YIELD               "process yielded",
220
221  event LWIPPBF2            "LWIP pbuf freed",
222  event LWIPPBA2            "LWIP pbuf Allocated",
223
224  event NI_PKT_CPY          "Queue manager packet copy",
225 event DRV_POLL             "e1000 polling",
226  event DRV_SEE             "handled packet",
227  event DRVTXDONE           "TX buffer reclamation",
228  event DRVRX               "checking for new packets",
229  event WEBEVENTLOOP        "Webserver event loop",
230
231
232  event RXESVAPPCSTART      "Ethersrv app c2u started",
233  event RXESVCOPIED         "Ethersrv copied pkg",
234  event RXESVSPPDONE        "Ethersrv spp produce done",
235  event RXESVAPPNOTIF       "Ethersrv app notify",
236  event RXLWIINCOM          "LWIP handle_incoming_",
237  event RXLWIRECH           "LWIP call rec_handler",
238  event RXAPPRCV            "APP received",
239  event LWIPRX              "LWIP handle incoming",
240
241  event TXAPPSNT            "APP sent",
242  event TXLWISEE            "LWIP idc_send_packet",
243  event TXLWIBFFENCE        "LWIP before mfence",
244  event TXLWIAFFENCE        "LWIP after mfence",
245  event TXLWIFLUSHED        "LWIP payload flushed",
246  event TXLWIBDESC          "LWIP bufferdesc fetched",
247  event TXLWISPPSND         "LWIP spp produced",
248  event TXLWISPPIDX         "LWIP update spp index",
249  event TXLWITXWORK         "LWIP pending TX work",
250  event TXLWINOTIF          "LWIP notify driver",
251  event TXESVNOTIF          "Ethersrv notify recieved",
252  event TXESVSPOW           "Ethersrv send_pkt_on_w..",
253  event TXESVSSPOW          "Ethersrv send_sng_pkt..",
254  event TXDRVADD            "Driver add pkg (TX)",
255  event TXDRVSEE            "Driver saw pkg done (TX)",
256  event TX_TCP_WRITE        "tcp_write done",
257  event TX_TCP_OUTPUT       "tcp_output done",
258  event TX_TCP_RECV         "tcp_recved done",
259  event TX_TCP_FREE         "tx pbuf freed",
260  event TX_MEMP             "tx pbuf memp start",
261  event TX_MEMP_D           "tx pbuf memp done",
262
263
264
265 };
266
267
268
269 subsystem multihop {
270
271  event BENCH_START               "",
272  event BENCH_STOP                "",
273  event MESSAGE_SEND              "",
274  event MESSAGE_RECEIVE           "",
275
276 };
277
278
279 /* The example subsystem is used to demonstrate how the tracing framework
280  * works. It is used by the program in "examples/xmpl-trace". */
281 subsystem xmpl {
282
283         event START                             "",
284         event STOP                              "",
285         event EV1                               "",
286         event EV2                               "",
287
288 };
289