]>
git.saurik.com Git - apple/xnu.git/blob - osfmk/mach/etap_events.h
2 * Copyright (c) 2000 Apple Computer, Inc. All rights reserved.
4 * @APPLE_LICENSE_HEADER_START@
6 * The contents of this file constitute Original Code as defined in and
7 * are subject to the Apple Public Source License Version 1.1 (the
8 * "License"). You may not use this file except in compliance with the
9 * License. Please obtain a copy of the License at
10 * http://www.apple.com/publicsource and read it before using this file.
12 * This Original Code and all software distributed under the License are
13 * distributed on an "AS IS" basis, WITHOUT WARRANTY OF ANY KIND, EITHER
14 * EXPRESS OR IMPLIED, AND APPLE HEREBY DISCLAIMS ALL SUCH WARRANTIES,
15 * INCLUDING WITHOUT LIMITATION, ANY WARRANTIES OF MERCHANTABILITY,
16 * FITNESS FOR A PARTICULAR PURPOSE OR NON-INFRINGEMENT. Please see the
17 * License for the specific language governing rights and limitations
20 * @APPLE_LICENSE_HEADER_END@
26 * File : etap_events.h
28 * Kernel trace event definitions
30 * Notes : If new trace event or subsystem definitions are added
31 * to this file, the appropriate tables in kern/etap.c MUST be
32 * updated for the ETAP package to recognize them.
36 #ifndef _MACH_ETAP_EVENTS_H_
37 #define _MACH_ETAP_EVENTS_H_
40 /* ============================
41 * ETAP Subsystem Definitions
42 * ============================
45 #define ETAP_SUBS_PROBE 0x0000 /* must be zero */
47 #define ETAP_SUBS_LOCK_VM 0x0100
48 #define ETAP_SUBS_LOCK_IPC 0x0200
49 #define ETAP_SUBS_LOCK_IO 0x0300
50 #define ETAP_SUBS_LOCK_THREAD 0x0400
51 #define ETAP_SUBS_LOCK_NET 0x0500
52 #define ETAP_SUBS_LOCK_NORMA 0x0600
53 #define ETAP_SUBS_LOCK_DIPC 0x0700
54 #define ETAP_SUBS_LOCK_KKT 0x0800
55 #define ETAP_SUBS_LOCK_XKERNEL 0x0900
56 #define ETAP_SUBS_LOCK_MISC 0x0a00
58 #define ETAP_NO_TRACE 0x0fff /* never traced */
61 /* =======================
62 * Lock Event Definitions
63 * =======================
66 #define ETAP_VM_BUCKET (ETAP_SUBS_LOCK_VM + 1)
67 #define ETAP_VM_HIMEM (ETAP_SUBS_LOCK_VM + 2)
68 #define ETAP_VM_MAP (ETAP_SUBS_LOCK_VM + 3)
69 #define ETAP_VM_MAP_I (ETAP_SUBS_LOCK_VM + 4)
70 #define ETAP_VM_MEMMAN (ETAP_SUBS_LOCK_VM + 5)
71 #define ETAP_VM_MSYNC (ETAP_SUBS_LOCK_VM + 6)
72 #define ETAP_VM_OBJ (ETAP_SUBS_LOCK_VM + 7)
73 #define ETAP_VM_OBJ_CACHE (ETAP_SUBS_LOCK_VM + 8)
74 #define ETAP_VM_PAGE_ALLOC (ETAP_SUBS_LOCK_VM + 9)
75 #define ETAP_VM_PAGEOUT (ETAP_SUBS_LOCK_VM + 10)
76 #define ETAP_VM_PAGEQ (ETAP_SUBS_LOCK_VM + 11)
77 #define ETAP_VM_PAGEQ_FREE (ETAP_SUBS_LOCK_VM + 12)
78 #define ETAP_VM_PMAP (ETAP_SUBS_LOCK_VM + 13)
79 #define ETAP_VM_PMAP_CACHE (ETAP_SUBS_LOCK_VM + 14)
80 #define ETAP_VM_PMAP_FREE (ETAP_SUBS_LOCK_VM + 15)
81 #define ETAP_VM_PMAP_KERNEL (ETAP_SUBS_LOCK_VM + 16)
82 #define ETAP_VM_PMAP_SYS (ETAP_SUBS_LOCK_VM + 17)
83 #define ETAP_VM_PMAP_SYS_I (ETAP_SUBS_LOCK_VM + 18)
84 #define ETAP_VM_PMAP_UPDATE (ETAP_SUBS_LOCK_VM + 19)
85 #define ETAP_VM_PREPPIN (ETAP_SUBS_LOCK_VM + 20)
86 #define ETAP_VM_RESULT (ETAP_SUBS_LOCK_VM + 21)
87 #define ETAP_VM_TEST (ETAP_SUBS_LOCK_VM + 22)
88 #define ETAP_VM_PMAP_PHYSENTRIES (ETAP_SUBS_LOCK_VM + 23)
89 #define ETAP_VM_PMAP_SID (ETAP_SUBS_LOCK_VM + 24)
90 #define ETAP_VM_PMAP_PTE (ETAP_SUBS_LOCK_VM + 25)
91 #define ETAP_VM_PMAP_PTE_OVFLW (ETAP_SUBS_LOCK_VM + 26)
92 #define ETAP_VM_PMAP_TLB (ETAP_SUBS_LOCK_VM + 27)
94 #define ETAP_IPC_IHGB (ETAP_SUBS_LOCK_IPC + 1)
95 #define ETAP_IPC_IS (ETAP_SUBS_LOCK_IPC + 2)
96 #define ETAP_IPC_IS_REF (ETAP_SUBS_LOCK_IPC + 3)
97 #define ETAP_IPC_MQUEUE (ETAP_SUBS_LOCK_IPC + 4)
98 #define ETAP_IPC_OBJECT (ETAP_SUBS_LOCK_IPC + 5)
99 #define ETAP_IPC_PORT_MULT (ETAP_SUBS_LOCK_IPC + 6)
100 #define ETAP_IPC_PORT_TIME (ETAP_SUBS_LOCK_IPC + 7)
101 #define ETAP_IPC_RPC (ETAP_SUBS_LOCK_IPC + 8)
102 #define ETAP_IPC_PORT_ALLOCQ (ETAP_SUBS_LOCK_IPC + 9)
104 #define ETAP_IO_AHA (ETAP_SUBS_LOCK_IO + 1)
105 #define ETAP_IO_CHIP (ETAP_SUBS_LOCK_IO + 2)
106 #define ETAP_IO_DEV (ETAP_SUBS_LOCK_IO + 3)
107 #define ETAP_IO_DEV_NUM (ETAP_SUBS_LOCK_IO + 4)
108 #define ETAP_IO_DEV_PAGEH (ETAP_SUBS_LOCK_IO + 5)
109 #define ETAP_IO_DEV_PAGER (ETAP_SUBS_LOCK_IO + 6)
110 #define ETAP_IO_DEV_PORT (ETAP_SUBS_LOCK_IO + 7)
111 #define ETAP_IO_DEV_REF (ETAP_SUBS_LOCK_IO + 8)
112 #define ETAP_IO_DEVINS (ETAP_SUBS_LOCK_IO + 9)
113 #define ETAP_IO_DONE_LIST (ETAP_SUBS_LOCK_IO + 10)
114 #define ETAP_IO_DONE_Q (ETAP_SUBS_LOCK_IO + 11)
115 #define ETAP_IO_DONE_REF (ETAP_SUBS_LOCK_IO + 12)
116 #define ETAP_IO_EAHA (ETAP_SUBS_LOCK_IO + 13)
117 #define ETAP_IO_HD_PROBE (ETAP_SUBS_LOCK_IO + 14)
118 #define ETAP_IO_IHGB (ETAP_SUBS_LOCK_IO + 15)
119 #define ETAP_IO_IOPB (ETAP_SUBS_LOCK_IO + 16)
120 #define ETAP_IO_KDQ (ETAP_SUBS_LOCK_IO + 17)
121 #define ETAP_IO_KDTTY (ETAP_SUBS_LOCK_IO + 18)
122 #define ETAP_IO_REQ (ETAP_SUBS_LOCK_IO + 19)
123 #define ETAP_IO_TARGET (ETAP_SUBS_LOCK_IO + 20)
124 #define ETAP_IO_TTY (ETAP_SUBS_LOCK_IO + 21)
125 #define ETAP_IO_IOP_LOCK (ETAP_SUBS_LOCK_IO + 22)
126 #define ETAP_IO_DEV_NAME (ETAP_SUBS_LOCK_IO + 23)
127 #define ETAP_IO_CDLI (ETAP_SUBS_LOCK_IO + 24)
128 #define ETAP_IO_HIPPI_FILTER (ETAP_SUBS_LOCK_IO + 25)
129 #define ETAP_IO_HIPPI_SRC (ETAP_SUBS_LOCK_IO + 26)
130 #define ETAP_IO_HIPPI_DST (ETAP_SUBS_LOCK_IO + 27)
131 #define ETAP_IO_HIPPI_PKT (ETAP_SUBS_LOCK_IO + 28)
132 #define ETAP_IO_NOTIFY (ETAP_SUBS_LOCK_IO + 29)
133 #define ETAP_IO_DATADEV (ETAP_SUBS_LOCK_IO + 30)
134 #define ETAP_IO_OPEN (ETAP_SUBS_LOCK_IO + 31)
135 #define ETAP_IO_OPEN_I (ETAP_SUBS_LOCK_IO + 32)
136 #define ETAP_IO_UNDREPLY (ETAP_SUBS_LOCK_IO + 33)
138 #define ETAP_THREAD_ACT (ETAP_SUBS_LOCK_THREAD + 1)
139 #define ETAP_THREAD_ACTION (ETAP_SUBS_LOCK_THREAD + 2)
140 #define ETAP_THREAD_LOCK (ETAP_SUBS_LOCK_THREAD + 3)
141 #define ETAP_THREAD_LOCK_SET (ETAP_SUBS_LOCK_THREAD + 4)
142 #define ETAP_THREAD_NEW (ETAP_SUBS_LOCK_THREAD + 5)
143 #define ETAP_THREAD_PSET (ETAP_SUBS_LOCK_THREAD + 6)
144 #define ETAP_THREAD_PSET_ALL (ETAP_SUBS_LOCK_THREAD + 7)
145 #define ETAP_THREAD_PSET_RUNQ (ETAP_SUBS_LOCK_THREAD + 8)
146 #define ETAP_THREAD_PSET_IDLE (ETAP_SUBS_LOCK_THREAD + 9)
147 #define ETAP_THREAD_PSET_QUANT (ETAP_SUBS_LOCK_THREAD + 10)
148 #define ETAP_THREAD_PROC (ETAP_SUBS_LOCK_THREAD + 11)
149 #define ETAP_THREAD_PROC_RUNQ (ETAP_SUBS_LOCK_THREAD + 12)
150 #define ETAP_THREAD_REAPER (ETAP_SUBS_LOCK_THREAD + 13)
151 #define ETAP_THREAD_RPC (ETAP_SUBS_LOCK_THREAD + 14)
152 #define ETAP_THREAD_REM_RPC (ETAP_SUBS_LOCK_THREAD + 15)
153 #define ETAP_THREAD_SEMA (ETAP_SUBS_LOCK_THREAD + 16)
154 #define ETAP_THREAD_STACK (ETAP_SUBS_LOCK_THREAD + 17)
155 #define ETAP_THREAD_STACK_USAGE (ETAP_SUBS_LOCK_THREAD + 18)
156 #define ETAP_THREAD_TASK_NEW (ETAP_SUBS_LOCK_THREAD + 19)
157 #define ETAP_THREAD_TASK_ITK (ETAP_SUBS_LOCK_THREAD + 20)
158 #define ETAP_THREAD_ULOCK (ETAP_SUBS_LOCK_THREAD + 21)
159 #define ETAP_THREAD_WAIT (ETAP_SUBS_LOCK_THREAD + 22)
160 #define ETAP_THREAD_WAKE (ETAP_SUBS_LOCK_THREAD + 23)
161 #define ETAP_THREAD_ACT_LIST (ETAP_SUBS_LOCK_THREAD + 24)
162 #define ETAP_THREAD_TASK_SWAP (ETAP_SUBS_LOCK_THREAD + 25)
163 #define ETAP_THREAD_TASK_SWAPOUT (ETAP_SUBS_LOCK_THREAD + 26)
164 #define ETAP_THREAD_SWAPPER (ETAP_SUBS_LOCK_THREAD + 27)
166 #define ETAP_NET_IFQ (ETAP_SUBS_LOCK_NET + 1)
167 #define ETAP_NET_KMSG (ETAP_SUBS_LOCK_NET + 2)
168 #define ETAP_NET_MBUF (ETAP_SUBS_LOCK_NET + 3)
169 #define ETAP_NET_POOL (ETAP_SUBS_LOCK_NET + 4)
170 #define ETAP_NET_Q (ETAP_SUBS_LOCK_NET + 5)
171 #define ETAP_NET_QFREE (ETAP_SUBS_LOCK_NET + 6)
172 #define ETAP_NET_RCV (ETAP_SUBS_LOCK_NET + 7)
173 #define ETAP_NET_RCV_PLIST (ETAP_SUBS_LOCK_NET + 8)
174 #define ETAP_NET_THREAD (ETAP_SUBS_LOCK_NET + 9)
176 #define ETAP_NORMA_XMM (ETAP_SUBS_LOCK_NORMA + 1)
177 #define ETAP_NORMA_XMMOBJ (ETAP_SUBS_LOCK_NORMA + 2)
178 #define ETAP_NORMA_XMMCACHE (ETAP_SUBS_LOCK_NORMA + 3)
179 #define ETAP_NORMA_MP (ETAP_SUBS_LOCK_NORMA + 4)
180 #define ETAP_NORMA_VOR (ETAP_SUBS_LOCK_NORMA + 5)
181 #define ETAP_NORMA_TASK (ETAP_SUBS_LOCK_NORMA + 6)
183 #define ETAP_DIPC_CLEANUP (ETAP_SUBS_LOCK_DIPC + 1)
184 #define ETAP_DIPC_MSG_PROG (ETAP_SUBS_LOCK_DIPC + 2)
185 #define ETAP_DIPC_PREP_QUEUE (ETAP_SUBS_LOCK_DIPC + 3)
186 #define ETAP_DIPC_PREP_FILL (ETAP_SUBS_LOCK_DIPC + 4)
187 #define ETAP_DIPC_MIGRATE (ETAP_SUBS_LOCK_DIPC + 5)
188 #define ETAP_DIPC_DELIVER (ETAP_SUBS_LOCK_DIPC + 6)
189 #define ETAP_DIPC_RECV_SYNC (ETAP_SUBS_LOCK_DIPC + 7)
190 #define ETAP_DIPC_RPC (ETAP_SUBS_LOCK_DIPC + 8)
191 #define ETAP_DIPC_MSG_REQ (ETAP_SUBS_LOCK_DIPC + 9)
192 #define ETAP_DIPC_MSG_ORDER (ETAP_SUBS_LOCK_DIPC + 10)
193 #define ETAP_DIPC_MSG_PREPQ (ETAP_SUBS_LOCK_DIPC + 11)
194 #define ETAP_DIPC_MSG_FREE (ETAP_SUBS_LOCK_DIPC + 12)
195 #define ETAP_DIPC_KMSG_AST (ETAP_SUBS_LOCK_DIPC + 13)
196 #define ETAP_DIPC_TEST_LOCK (ETAP_SUBS_LOCK_DIPC + 14)
197 #define ETAP_DIPC_SPINLOCK (ETAP_SUBS_LOCK_DIPC + 15)
198 #define ETAP_DIPC_TRACE (ETAP_SUBS_LOCK_DIPC + 16)
199 #define ETAP_DIPC_REQ_CALLBACK (ETAP_SUBS_LOCK_DIPC + 17)
200 #define ETAP_DIPC_PORT_NAME (ETAP_SUBS_LOCK_DIPC + 18)
201 #define ETAP_DIPC_RESTART_PORT (ETAP_SUBS_LOCK_DIPC + 19)
202 #define ETAP_DIPC_ZERO_PAGE (ETAP_SUBS_LOCK_DIPC + 20)
203 #define ETAP_DIPC_BLOCKED_NODE (ETAP_SUBS_LOCK_DIPC + 21)
204 #define ETAP_DIPC_TIMER (ETAP_SUBS_LOCK_DIPC + 22)
205 #define ETAP_DIPC_SPECIAL_PORT (ETAP_SUBS_LOCK_DIPC + 23)
207 #define ETAP_KKT_TEST_WORK (ETAP_SUBS_LOCK_KKT + 1)
208 #define ETAP_KKT_TEST_MP (ETAP_SUBS_LOCK_KKT + 2)
209 #define ETAP_KKT_NODE (ETAP_SUBS_LOCK_KKT + 3)
210 #define ETAP_KKT_CHANNEL_LIST (ETAP_SUBS_LOCK_KKT + 4)
211 #define ETAP_KKT_CHANNEL (ETAP_SUBS_LOCK_KKT + 5)
212 #define ETAP_KKT_HANDLE (ETAP_SUBS_LOCK_KKT + 6)
213 #define ETAP_KKT_MAP (ETAP_SUBS_LOCK_KKT + 7)
214 #define ETAP_KKT_RESOURCE (ETAP_SUBS_LOCK_KKT + 8)
216 #define ETAP_XKERNEL_MASTER (ETAP_SUBS_LOCK_XKERNEL + 1)
217 #define ETAP_XKERNEL_EVENT (ETAP_SUBS_LOCK_XKERNEL + 2)
218 #define ETAP_XKERNEL_ETHINPUT (ETAP_SUBS_LOCK_XKERNEL + 3)
220 #define ETAP_MISC_AST (ETAP_SUBS_LOCK_MISC + 1)
221 #define ETAP_MISC_CLOCK (ETAP_SUBS_LOCK_MISC + 2)
222 #define ETAP_MISC_EMULATE (ETAP_SUBS_LOCK_MISC + 3)
223 #define ETAP_MISC_EVENT (ETAP_SUBS_LOCK_MISC + 4)
224 #define ETAP_MISC_KDB (ETAP_SUBS_LOCK_MISC + 5)
225 #define ETAP_MISC_PCB (ETAP_SUBS_LOCK_MISC + 6)
226 #define ETAP_MISC_PRINTF (ETAP_SUBS_LOCK_MISC + 7)
227 #define ETAP_MISC_Q (ETAP_SUBS_LOCK_MISC + 8)
228 #define ETAP_MISC_RPC_SUBSYS (ETAP_SUBS_LOCK_MISC + 9)
229 #define ETAP_MISC_RT_CLOCK (ETAP_SUBS_LOCK_MISC + 10)
230 #define ETAP_MISC_SD_POOL (ETAP_SUBS_LOCK_MISC + 11)
231 #define ETAP_MISC_TIMER (ETAP_SUBS_LOCK_MISC + 12)
232 #define ETAP_MISC_UTIME (ETAP_SUBS_LOCK_MISC + 13)
233 #define ETAP_MISC_XPR (ETAP_SUBS_LOCK_MISC + 14)
234 #define ETAP_MISC_ZONE (ETAP_SUBS_LOCK_MISC + 15)
235 #define ETAP_MISC_ZONE_ALL (ETAP_SUBS_LOCK_MISC + 16)
236 #define ETAP_MISC_ZONE_GET (ETAP_SUBS_LOCK_MISC + 17)
237 #define ETAP_MISC_ZONE_PTABLE (ETAP_SUBS_LOCK_MISC + 18)
238 #define ETAP_MISC_LEDGER (ETAP_SUBS_LOCK_MISC + 19)
239 #define ETAP_MISC_SCSIT_TGT (ETAP_SUBS_LOCK_MISC + 20)
240 #define ETAP_MISC_SCSIT_SELF (ETAP_SUBS_LOCK_MISC + 21)
241 #define ETAP_MISC_SPL (ETAP_SUBS_LOCK_MISC + 22) /* i860 */
242 #define ETAP_MISC_MASTER (ETAP_SUBS_LOCK_MISC + 23) /* i860 */
243 #define ETAP_MISC_FLOAT (ETAP_SUBS_LOCK_MISC + 24) /* i860 */
244 #define ETAP_MISC_GROUP (ETAP_SUBS_LOCK_MISC + 25) /* i860 */
245 #define ETAP_MISC_FLIPC (ETAP_SUBS_LOCK_MISC + 26)
246 #define ETAP_MISC_MP_IO (ETAP_SUBS_LOCK_MISC + 27)
247 #define ETAP_MISC_KERNEL_TEST (ETAP_SUBS_LOCK_MISC + 28)
248 #define ETAP_MISC_TIMER_LOCK (ETAP_SUBS_LOCK_MISC + 29)
249 #define ETAP_MISC_POST (ETAP_SUBS_LOCK_MISC + 30) /* i860 */
250 #define ETAP_MISC_KERNLOG (ETAP_SUBS_LOCK_MISC + 31) /* Alpha */
251 #define ETAP_DPAGE_BS (ETAP_SUBS_LOCK_MISC + 32) /* def pager */
252 #define ETAP_DPAGE_BSL (ETAP_SUBS_LOCK_MISC + 33) /* def pager */
253 #define ETAP_DPAGE_SEGMENT (ETAP_SUBS_LOCK_MISC + 34) /* def pager */
254 #define ETAP_DPAGE_SEGLIST (ETAP_SUBS_LOCK_MISC + 35) /* def pager */
255 #define ETAP_DPAGE_VSTRUCT (ETAP_SUBS_LOCK_MISC + 36) /* def pager */
256 #define ETAP_DPAGE_VSMAP (ETAP_SUBS_LOCK_MISC + 37) /* def pager */
257 #define ETAP_DPAGE_VSLIST (ETAP_SUBS_LOCK_MISC + 38) /* def pager */
258 #define ETAP_DPAGE_VSSEQNO (ETAP_SUBS_LOCK_MISC + 39) /* def pager */
259 #define ETAP_DPAGE_VSREAD (ETAP_SUBS_LOCK_MISC + 40) /* def pager */
260 #define ETAP_DPAGE_VSWRITE (ETAP_SUBS_LOCK_MISC + 41) /* def pager */
261 #define ETAP_DPAGE_VSREFS (ETAP_SUBS_LOCK_MISC + 42) /* def pager */
262 #define ETAP_DPAGE_VSASYNC (ETAP_SUBS_LOCK_MISC + 43) /* def pager */
264 /* ==========================
265 * System Probe Definitions
266 * ==========================
268 /* probes 0-31 reserved for non-MK (e.g. users and servers) */
269 #define ETAP_USER_BASE 0
270 #define ETAP_USER_NEVENTS 32
272 #define ETAP_P_USER_EVENT0 (ETAP_SUBS_PROBE + ETAP_USER_BASE + 0)
273 #define ETAP_P_USER_EVENT1 (ETAP_SUBS_PROBE + ETAP_USER_BASE + 1)
274 #define ETAP_P_USER_EVENT2 (ETAP_SUBS_PROBE + ETAP_USER_BASE + 2)
275 #define ETAP_P_USER_EVENT3 (ETAP_SUBS_PROBE + ETAP_USER_BASE + 3)
276 #define ETAP_P_USER_EVENT4 (ETAP_SUBS_PROBE + ETAP_USER_BASE + 4)
277 #define ETAP_P_USER_EVENT5 (ETAP_SUBS_PROBE + ETAP_USER_BASE + 5)
278 #define ETAP_P_USER_EVENT6 (ETAP_SUBS_PROBE + ETAP_USER_BASE + 6)
279 #define ETAP_P_USER_EVENT7 (ETAP_SUBS_PROBE + ETAP_USER_BASE + 7)
280 #define ETAP_P_USER_EVENT8 (ETAP_SUBS_PROBE + ETAP_USER_BASE + 8)
281 #define ETAP_P_USER_EVENT9 (ETAP_SUBS_PROBE + ETAP_USER_BASE + 9)
282 #define ETAP_P_USER_EVENT10 (ETAP_SUBS_PROBE + ETAP_USER_BASE + 10)
283 #define ETAP_P_USER_EVENT11 (ETAP_SUBS_PROBE + ETAP_USER_BASE + 11)
284 #define ETAP_P_USER_EVENT12 (ETAP_SUBS_PROBE + ETAP_USER_BASE + 12)
285 #define ETAP_P_USER_EVENT13 (ETAP_SUBS_PROBE + ETAP_USER_BASE + 13)
286 #define ETAP_P_USER_EVENT14 (ETAP_SUBS_PROBE + ETAP_USER_BASE + 14)
287 #define ETAP_P_USER_EVENT15 (ETAP_SUBS_PROBE + ETAP_USER_BASE + 15)
288 #define ETAP_P_USER_EVENT16 (ETAP_SUBS_PROBE + ETAP_USER_BASE + 16)
289 #define ETAP_P_USER_EVENT17 (ETAP_SUBS_PROBE + ETAP_USER_BASE + 17)
290 #define ETAP_P_USER_EVENT18 (ETAP_SUBS_PROBE + ETAP_USER_BASE + 18)
291 #define ETAP_P_USER_EVENT19 (ETAP_SUBS_PROBE + ETAP_USER_BASE + 19)
292 #define ETAP_P_USER_EVENT20 (ETAP_SUBS_PROBE + ETAP_USER_BASE + 20)
293 #define ETAP_P_USER_EVENT21 (ETAP_SUBS_PROBE + ETAP_USER_BASE + 21)
294 #define ETAP_P_USER_EVENT22 (ETAP_SUBS_PROBE + ETAP_USER_BASE + 22)
295 #define ETAP_P_USER_EVENT23 (ETAP_SUBS_PROBE + ETAP_USER_BASE + 23)
296 #define ETAP_P_USER_EVENT24 (ETAP_SUBS_PROBE + ETAP_USER_BASE + 24)
297 #define ETAP_P_USER_EVENT25 (ETAP_SUBS_PROBE + ETAP_USER_BASE + 25)
298 #define ETAP_P_USER_EVENT26 (ETAP_SUBS_PROBE + ETAP_USER_BASE + 26)
299 #define ETAP_P_USER_EVENT27 (ETAP_SUBS_PROBE + ETAP_USER_BASE + 27)
300 #define ETAP_P_USER_EVENT28 (ETAP_SUBS_PROBE + ETAP_USER_BASE + 28)
301 #define ETAP_P_USER_EVENT29 (ETAP_SUBS_PROBE + ETAP_USER_BASE + 29)
302 #define ETAP_P_USER_EVENT30 (ETAP_SUBS_PROBE + ETAP_USER_BASE + 30)
303 #define ETAP_P_USER_EVENT31 (ETAP_SUBS_PROBE + ETAP_USER_BASE + 31)
305 /* probes 32-63 reserved for MK */
306 #define ETAP_SYS_BASE 32
308 #define ETAP_P_SYSCALL_MACH (ETAP_SUBS_PROBE + ETAP_SYS_BASE + 0)
309 #define ETAP_P_SYSCALL_UNIX (ETAP_SUBS_PROBE + ETAP_SYS_BASE + 1)
310 #define ETAP_P_THREAD_LIFE (ETAP_SUBS_PROBE + ETAP_SYS_BASE + 2)
311 #define ETAP_P_THREAD_CTX (ETAP_SUBS_PROBE + ETAP_SYS_BASE + 3)
312 #define ETAP_P_RPC (ETAP_SUBS_PROBE + ETAP_SYS_BASE + 4)
313 #define ETAP_P_INTERRUPT (ETAP_SUBS_PROBE + ETAP_SYS_BASE + 5)
314 #define ETAP_P_ACT_ABORT (ETAP_SUBS_PROBE + ETAP_SYS_BASE + 6)
315 #define ETAP_P_PRIORITY (ETAP_SUBS_PROBE + ETAP_SYS_BASE + 7)
316 #define ETAP_P_EXCEPTION (ETAP_SUBS_PROBE + ETAP_SYS_BASE + 8)
317 #define ETAP_P_DEPRESSION (ETAP_SUBS_PROBE + ETAP_SYS_BASE + 9)
318 #define ETAP_P_MISC (ETAP_SUBS_PROBE + ETAP_SYS_BASE + 10)
319 #define ETAP_P_DETAP (ETAP_SUBS_PROBE + ETAP_SYS_BASE + 11)
321 /* ===========================
322 * ETAP Thread block reasons
323 * ===========================
326 #define BLOCKED_ON_UNDEFINED 0
327 #define BLOCKED_ON_CLEAR 0
329 #define BLOCKED_ON_SEMAPHORE 1
330 #define BLOCKED_ON_LOCK 2
331 #define BLOCKED_ON_LOCK_HANDOFF 3
332 #define BLOCKED_ON_MUTEX_LOCK 4
333 #define BLOCKED_ON_COMPLEX_LOCK 5
334 #define BLOCKED_ON_PORT_RCV 6
335 #define BLOCKED_ON_REAPER_DONE 7
336 #define BLOCKED_ON_IDLE_DONE 8
337 #define BLOCKED_ON_TERMINATION 9
339 #endif /* _MACH_ETAP_EVENTS_H_ */