]>
git.saurik.com Git - apple/xnu.git/blob - osfmk/mach/etap_events.h
29dced2f9f9f200743cc5c60aea27904b0b40ca9
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_
39 #include <sys/appleapiopts.h>
41 #ifdef __APPLE_API_UNSTABLE
43 /* ============================
44 * ETAP Subsystem Definitions
45 * ============================
48 #define ETAP_SUBS_PROBE 0x0000 /* must be zero */
50 #define ETAP_SUBS_LOCK_VM 0x0100
51 #define ETAP_SUBS_LOCK_IPC 0x0200
52 #define ETAP_SUBS_LOCK_IO 0x0300
53 #define ETAP_SUBS_LOCK_THREAD 0x0400
54 #define ETAP_SUBS_LOCK_NET 0x0500
55 #define ETAP_SUBS_LOCK_NORMA 0x0600
56 #define ETAP_SUBS_LOCK_DIPC 0x0700
57 #define ETAP_SUBS_LOCK_KKT 0x0800
58 #define ETAP_SUBS_LOCK_XKERNEL 0x0900
59 #define ETAP_SUBS_LOCK_MISC 0x0a00
61 #define ETAP_NO_TRACE 0x0fff /* never traced */
64 /* =======================
65 * Lock Event Definitions
66 * =======================
69 #define ETAP_VM_BUCKET (ETAP_SUBS_LOCK_VM + 1)
70 #define ETAP_VM_HIMEM (ETAP_SUBS_LOCK_VM + 2)
71 #define ETAP_VM_MAP (ETAP_SUBS_LOCK_VM + 3)
72 #define ETAP_VM_MAP_I (ETAP_SUBS_LOCK_VM + 4)
73 #define ETAP_VM_MEMMAN (ETAP_SUBS_LOCK_VM + 5)
74 #define ETAP_VM_MSYNC (ETAP_SUBS_LOCK_VM + 6)
75 #define ETAP_VM_OBJ (ETAP_SUBS_LOCK_VM + 7)
76 #define ETAP_VM_OBJ_CACHE (ETAP_SUBS_LOCK_VM + 8)
77 #define ETAP_VM_PAGE_ALLOC (ETAP_SUBS_LOCK_VM + 9)
78 #define ETAP_VM_PAGEOUT (ETAP_SUBS_LOCK_VM + 10)
79 #define ETAP_VM_PAGEQ (ETAP_SUBS_LOCK_VM + 11)
80 #define ETAP_VM_PAGEQ_FREE (ETAP_SUBS_LOCK_VM + 12)
81 #define ETAP_VM_PMAP (ETAP_SUBS_LOCK_VM + 13)
82 #define ETAP_VM_PMAP_CACHE (ETAP_SUBS_LOCK_VM + 14)
83 #define ETAP_VM_PMAP_FREE (ETAP_SUBS_LOCK_VM + 15)
84 #define ETAP_VM_PMAP_KERNEL (ETAP_SUBS_LOCK_VM + 16)
85 #define ETAP_VM_PMAP_SYS (ETAP_SUBS_LOCK_VM + 17)
86 #define ETAP_VM_PMAP_SYS_I (ETAP_SUBS_LOCK_VM + 18)
87 #define ETAP_VM_PMAP_UPDATE (ETAP_SUBS_LOCK_VM + 19)
88 #define ETAP_VM_PREPPIN (ETAP_SUBS_LOCK_VM + 20)
89 #define ETAP_VM_RESULT (ETAP_SUBS_LOCK_VM + 21)
90 #define ETAP_VM_TEST (ETAP_SUBS_LOCK_VM + 22)
91 #define ETAP_VM_PMAP_PHYSENTRIES (ETAP_SUBS_LOCK_VM + 23)
92 #define ETAP_VM_PMAP_SID (ETAP_SUBS_LOCK_VM + 24)
93 #define ETAP_VM_PMAP_PTE (ETAP_SUBS_LOCK_VM + 25)
94 #define ETAP_VM_PMAP_PTE_OVFLW (ETAP_SUBS_LOCK_VM + 26)
95 #define ETAP_VM_PMAP_TLB (ETAP_SUBS_LOCK_VM + 27)
97 #define ETAP_IPC_IHGB (ETAP_SUBS_LOCK_IPC + 1)
98 #define ETAP_IPC_IS (ETAP_SUBS_LOCK_IPC + 2)
99 #define ETAP_IPC_IS_REF (ETAP_SUBS_LOCK_IPC + 3)
100 #define ETAP_IPC_MQUEUE (ETAP_SUBS_LOCK_IPC + 4)
101 #define ETAP_IPC_OBJECT (ETAP_SUBS_LOCK_IPC + 5)
102 #define ETAP_IPC_PORT_MULT (ETAP_SUBS_LOCK_IPC + 6)
103 #define ETAP_IPC_PORT_TIME (ETAP_SUBS_LOCK_IPC + 7)
104 #define ETAP_IPC_RPC (ETAP_SUBS_LOCK_IPC + 8)
105 #define ETAP_IPC_PORT_ALLOCQ (ETAP_SUBS_LOCK_IPC + 9)
107 #define ETAP_IO_AHA (ETAP_SUBS_LOCK_IO + 1)
108 #define ETAP_IO_CHIP (ETAP_SUBS_LOCK_IO + 2)
109 #define ETAP_IO_DEV (ETAP_SUBS_LOCK_IO + 3)
110 #define ETAP_IO_DEV_NUM (ETAP_SUBS_LOCK_IO + 4)
111 #define ETAP_IO_DEV_PAGEH (ETAP_SUBS_LOCK_IO + 5)
112 #define ETAP_IO_DEV_PAGER (ETAP_SUBS_LOCK_IO + 6)
113 #define ETAP_IO_DEV_PORT (ETAP_SUBS_LOCK_IO + 7)
114 #define ETAP_IO_DEV_REF (ETAP_SUBS_LOCK_IO + 8)
115 #define ETAP_IO_DEVINS (ETAP_SUBS_LOCK_IO + 9)
116 #define ETAP_IO_DONE_LIST (ETAP_SUBS_LOCK_IO + 10)
117 #define ETAP_IO_DONE_Q (ETAP_SUBS_LOCK_IO + 11)
118 #define ETAP_IO_DONE_REF (ETAP_SUBS_LOCK_IO + 12)
119 #define ETAP_IO_EAHA (ETAP_SUBS_LOCK_IO + 13)
120 #define ETAP_IO_HD_PROBE (ETAP_SUBS_LOCK_IO + 14)
121 #define ETAP_IO_IHGB (ETAP_SUBS_LOCK_IO + 15)
122 #define ETAP_IO_IOPB (ETAP_SUBS_LOCK_IO + 16)
123 #define ETAP_IO_KDQ (ETAP_SUBS_LOCK_IO + 17)
124 #define ETAP_IO_KDTTY (ETAP_SUBS_LOCK_IO + 18)
125 #define ETAP_IO_REQ (ETAP_SUBS_LOCK_IO + 19)
126 #define ETAP_IO_TARGET (ETAP_SUBS_LOCK_IO + 20)
127 #define ETAP_IO_TTY (ETAP_SUBS_LOCK_IO + 21)
128 #define ETAP_IO_IOP_LOCK (ETAP_SUBS_LOCK_IO + 22)
129 #define ETAP_IO_DEV_NAME (ETAP_SUBS_LOCK_IO + 23)
130 #define ETAP_IO_CDLI (ETAP_SUBS_LOCK_IO + 24)
131 #define ETAP_IO_HIPPI_FILTER (ETAP_SUBS_LOCK_IO + 25)
132 #define ETAP_IO_HIPPI_SRC (ETAP_SUBS_LOCK_IO + 26)
133 #define ETAP_IO_HIPPI_DST (ETAP_SUBS_LOCK_IO + 27)
134 #define ETAP_IO_HIPPI_PKT (ETAP_SUBS_LOCK_IO + 28)
135 #define ETAP_IO_NOTIFY (ETAP_SUBS_LOCK_IO + 29)
136 #define ETAP_IO_DATADEV (ETAP_SUBS_LOCK_IO + 30)
137 #define ETAP_IO_OPEN (ETAP_SUBS_LOCK_IO + 31)
138 #define ETAP_IO_OPEN_I (ETAP_SUBS_LOCK_IO + 32)
139 #define ETAP_IO_UNDREPLY (ETAP_SUBS_LOCK_IO + 33)
141 #define ETAP_THREAD_ACT (ETAP_SUBS_LOCK_THREAD + 1)
142 #define ETAP_THREAD_ACTION (ETAP_SUBS_LOCK_THREAD + 2)
143 #define ETAP_THREAD_LOCK (ETAP_SUBS_LOCK_THREAD + 3)
144 #define ETAP_THREAD_LOCK_SET (ETAP_SUBS_LOCK_THREAD + 4)
145 #define ETAP_THREAD_NEW (ETAP_SUBS_LOCK_THREAD + 5)
146 #define ETAP_THREAD_PSET (ETAP_SUBS_LOCK_THREAD + 6)
147 #define ETAP_THREAD_PSET_ALL (ETAP_SUBS_LOCK_THREAD + 7)
148 #define ETAP_THREAD_PSET_RUNQ (ETAP_SUBS_LOCK_THREAD + 8)
149 #define ETAP_THREAD_PSET_IDLE (ETAP_SUBS_LOCK_THREAD + 9)
150 #define ETAP_THREAD_PSET_QUANT (ETAP_SUBS_LOCK_THREAD + 10)
151 #define ETAP_THREAD_PROC (ETAP_SUBS_LOCK_THREAD + 11)
152 #define ETAP_THREAD_PROC_RUNQ (ETAP_SUBS_LOCK_THREAD + 12)
153 #define ETAP_THREAD_REAPER (ETAP_SUBS_LOCK_THREAD + 13)
154 #define ETAP_THREAD_RPC (ETAP_SUBS_LOCK_THREAD + 14)
155 #define ETAP_THREAD_REM_RPC (ETAP_SUBS_LOCK_THREAD + 15)
156 #define ETAP_THREAD_SEMA (ETAP_SUBS_LOCK_THREAD + 16)
157 #define ETAP_THREAD_STACK (ETAP_SUBS_LOCK_THREAD + 17)
158 #define ETAP_THREAD_STACK_USAGE (ETAP_SUBS_LOCK_THREAD + 18)
159 #define ETAP_THREAD_TASK_NEW (ETAP_SUBS_LOCK_THREAD + 19)
160 #define ETAP_THREAD_TASK_ITK (ETAP_SUBS_LOCK_THREAD + 20)
161 #define ETAP_THREAD_ULOCK (ETAP_SUBS_LOCK_THREAD + 21)
162 #define ETAP_THREAD_WAIT (ETAP_SUBS_LOCK_THREAD + 22)
163 #define ETAP_THREAD_WAKE (ETAP_SUBS_LOCK_THREAD + 23)
164 #define ETAP_THREAD_ACT_LIST (ETAP_SUBS_LOCK_THREAD + 24)
165 #define ETAP_THREAD_TASK_SWAP (ETAP_SUBS_LOCK_THREAD + 25)
166 #define ETAP_THREAD_TASK_SWAPOUT (ETAP_SUBS_LOCK_THREAD + 26)
167 #define ETAP_THREAD_SWAPPER (ETAP_SUBS_LOCK_THREAD + 27)
169 #define ETAP_NET_IFQ (ETAP_SUBS_LOCK_NET + 1)
170 #define ETAP_NET_KMSG (ETAP_SUBS_LOCK_NET + 2)
171 #define ETAP_NET_MBUF (ETAP_SUBS_LOCK_NET + 3)
172 #define ETAP_NET_POOL (ETAP_SUBS_LOCK_NET + 4)
173 #define ETAP_NET_Q (ETAP_SUBS_LOCK_NET + 5)
174 #define ETAP_NET_QFREE (ETAP_SUBS_LOCK_NET + 6)
175 #define ETAP_NET_RCV (ETAP_SUBS_LOCK_NET + 7)
176 #define ETAP_NET_RCV_PLIST (ETAP_SUBS_LOCK_NET + 8)
177 #define ETAP_NET_THREAD (ETAP_SUBS_LOCK_NET + 9)
179 #define ETAP_NORMA_XMM (ETAP_SUBS_LOCK_NORMA + 1)
180 #define ETAP_NORMA_XMMOBJ (ETAP_SUBS_LOCK_NORMA + 2)
181 #define ETAP_NORMA_XMMCACHE (ETAP_SUBS_LOCK_NORMA + 3)
182 #define ETAP_NORMA_MP (ETAP_SUBS_LOCK_NORMA + 4)
183 #define ETAP_NORMA_VOR (ETAP_SUBS_LOCK_NORMA + 5)
184 #define ETAP_NORMA_TASK (ETAP_SUBS_LOCK_NORMA + 6)
186 #define ETAP_DIPC_CLEANUP (ETAP_SUBS_LOCK_DIPC + 1)
187 #define ETAP_DIPC_MSG_PROG (ETAP_SUBS_LOCK_DIPC + 2)
188 #define ETAP_DIPC_PREP_QUEUE (ETAP_SUBS_LOCK_DIPC + 3)
189 #define ETAP_DIPC_PREP_FILL (ETAP_SUBS_LOCK_DIPC + 4)
190 #define ETAP_DIPC_MIGRATE (ETAP_SUBS_LOCK_DIPC + 5)
191 #define ETAP_DIPC_DELIVER (ETAP_SUBS_LOCK_DIPC + 6)
192 #define ETAP_DIPC_RECV_SYNC (ETAP_SUBS_LOCK_DIPC + 7)
193 #define ETAP_DIPC_RPC (ETAP_SUBS_LOCK_DIPC + 8)
194 #define ETAP_DIPC_MSG_REQ (ETAP_SUBS_LOCK_DIPC + 9)
195 #define ETAP_DIPC_MSG_ORDER (ETAP_SUBS_LOCK_DIPC + 10)
196 #define ETAP_DIPC_MSG_PREPQ (ETAP_SUBS_LOCK_DIPC + 11)
197 #define ETAP_DIPC_MSG_FREE (ETAP_SUBS_LOCK_DIPC + 12)
198 #define ETAP_DIPC_KMSG_AST (ETAP_SUBS_LOCK_DIPC + 13)
199 #define ETAP_DIPC_TEST_LOCK (ETAP_SUBS_LOCK_DIPC + 14)
200 #define ETAP_DIPC_SPINLOCK (ETAP_SUBS_LOCK_DIPC + 15)
201 #define ETAP_DIPC_TRACE (ETAP_SUBS_LOCK_DIPC + 16)
202 #define ETAP_DIPC_REQ_CALLBACK (ETAP_SUBS_LOCK_DIPC + 17)
203 #define ETAP_DIPC_PORT_NAME (ETAP_SUBS_LOCK_DIPC + 18)
204 #define ETAP_DIPC_RESTART_PORT (ETAP_SUBS_LOCK_DIPC + 19)
205 #define ETAP_DIPC_ZERO_PAGE (ETAP_SUBS_LOCK_DIPC + 20)
206 #define ETAP_DIPC_BLOCKED_NODE (ETAP_SUBS_LOCK_DIPC + 21)
207 #define ETAP_DIPC_TIMER (ETAP_SUBS_LOCK_DIPC + 22)
208 #define ETAP_DIPC_SPECIAL_PORT (ETAP_SUBS_LOCK_DIPC + 23)
210 #define ETAP_KKT_TEST_WORK (ETAP_SUBS_LOCK_KKT + 1)
211 #define ETAP_KKT_TEST_MP (ETAP_SUBS_LOCK_KKT + 2)
212 #define ETAP_KKT_NODE (ETAP_SUBS_LOCK_KKT + 3)
213 #define ETAP_KKT_CHANNEL_LIST (ETAP_SUBS_LOCK_KKT + 4)
214 #define ETAP_KKT_CHANNEL (ETAP_SUBS_LOCK_KKT + 5)
215 #define ETAP_KKT_HANDLE (ETAP_SUBS_LOCK_KKT + 6)
216 #define ETAP_KKT_MAP (ETAP_SUBS_LOCK_KKT + 7)
217 #define ETAP_KKT_RESOURCE (ETAP_SUBS_LOCK_KKT + 8)
219 #define ETAP_XKERNEL_MASTER (ETAP_SUBS_LOCK_XKERNEL + 1)
220 #define ETAP_XKERNEL_EVENT (ETAP_SUBS_LOCK_XKERNEL + 2)
221 #define ETAP_XKERNEL_ETHINPUT (ETAP_SUBS_LOCK_XKERNEL + 3)
223 #define ETAP_MISC_AST (ETAP_SUBS_LOCK_MISC + 1)
224 #define ETAP_MISC_CLOCK (ETAP_SUBS_LOCK_MISC + 2)
225 #define ETAP_MISC_EMULATE (ETAP_SUBS_LOCK_MISC + 3)
226 #define ETAP_MISC_EVENT (ETAP_SUBS_LOCK_MISC + 4)
227 #define ETAP_MISC_KDB (ETAP_SUBS_LOCK_MISC + 5)
228 #define ETAP_MISC_PCB (ETAP_SUBS_LOCK_MISC + 6)
229 #define ETAP_MISC_PRINTF (ETAP_SUBS_LOCK_MISC + 7)
230 #define ETAP_MISC_Q (ETAP_SUBS_LOCK_MISC + 8)
231 #define ETAP_MISC_RPC_SUBSYS (ETAP_SUBS_LOCK_MISC + 9)
232 #define ETAP_MISC_RT_CLOCK (ETAP_SUBS_LOCK_MISC + 10)
233 #define ETAP_MISC_SD_POOL (ETAP_SUBS_LOCK_MISC + 11)
234 #define ETAP_MISC_TIMER (ETAP_SUBS_LOCK_MISC + 12)
235 #define ETAP_MISC_UTIME (ETAP_SUBS_LOCK_MISC + 13)
236 #define ETAP_MISC_XPR (ETAP_SUBS_LOCK_MISC + 14)
237 #define ETAP_MISC_ZONE (ETAP_SUBS_LOCK_MISC + 15)
238 #define ETAP_MISC_ZONE_ALL (ETAP_SUBS_LOCK_MISC + 16)
239 #define ETAP_MISC_ZONE_GET (ETAP_SUBS_LOCK_MISC + 17)
240 #define ETAP_MISC_ZONE_PTABLE (ETAP_SUBS_LOCK_MISC + 18)
241 #define ETAP_MISC_LEDGER (ETAP_SUBS_LOCK_MISC + 19)
242 #define ETAP_MISC_SCSIT_TGT (ETAP_SUBS_LOCK_MISC + 20)
243 #define ETAP_MISC_SCSIT_SELF (ETAP_SUBS_LOCK_MISC + 21)
244 #define ETAP_MISC_SPL (ETAP_SUBS_LOCK_MISC + 22) /* i860 */
245 #define ETAP_MISC_MASTER (ETAP_SUBS_LOCK_MISC + 23) /* i860 */
246 #define ETAP_MISC_FLOAT (ETAP_SUBS_LOCK_MISC + 24) /* i860 */
247 #define ETAP_MISC_GROUP (ETAP_SUBS_LOCK_MISC + 25) /* i860 */
248 #define ETAP_MISC_FLIPC (ETAP_SUBS_LOCK_MISC + 26)
249 #define ETAP_MISC_MP_IO (ETAP_SUBS_LOCK_MISC + 27)
250 #define ETAP_MISC_KERNEL_TEST (ETAP_SUBS_LOCK_MISC + 28)
251 #define ETAP_MISC_TIMER_LOCK (ETAP_SUBS_LOCK_MISC + 29)
252 #define ETAP_MISC_POST (ETAP_SUBS_LOCK_MISC + 30) /* i860 */
253 #define ETAP_MISC_KERNLOG (ETAP_SUBS_LOCK_MISC + 31) /* Alpha */
254 #define ETAP_DPAGE_BS (ETAP_SUBS_LOCK_MISC + 32) /* def pager */
255 #define ETAP_DPAGE_BSL (ETAP_SUBS_LOCK_MISC + 33) /* def pager */
256 #define ETAP_DPAGE_SEGMENT (ETAP_SUBS_LOCK_MISC + 34) /* def pager */
257 #define ETAP_DPAGE_SEGLIST (ETAP_SUBS_LOCK_MISC + 35) /* def pager */
258 #define ETAP_DPAGE_VSTRUCT (ETAP_SUBS_LOCK_MISC + 36) /* def pager */
259 #define ETAP_DPAGE_VSMAP (ETAP_SUBS_LOCK_MISC + 37) /* def pager */
260 #define ETAP_DPAGE_VSLIST (ETAP_SUBS_LOCK_MISC + 38) /* def pager */
261 #define ETAP_DPAGE_VSSEQNO (ETAP_SUBS_LOCK_MISC + 39) /* def pager */
262 #define ETAP_DPAGE_VSREAD (ETAP_SUBS_LOCK_MISC + 40) /* def pager */
263 #define ETAP_DPAGE_VSWRITE (ETAP_SUBS_LOCK_MISC + 41) /* def pager */
264 #define ETAP_DPAGE_VSREFS (ETAP_SUBS_LOCK_MISC + 42) /* def pager */
265 #define ETAP_DPAGE_VSASYNC (ETAP_SUBS_LOCK_MISC + 43) /* def pager */
267 /* ==========================
268 * System Probe Definitions
269 * ==========================
271 /* probes 0-31 reserved for non-MK (e.g. users and servers) */
272 #define ETAP_USER_BASE 0
273 #define ETAP_USER_NEVENTS 32
275 #define ETAP_P_USER_EVENT0 (ETAP_SUBS_PROBE + ETAP_USER_BASE + 0)
276 #define ETAP_P_USER_EVENT1 (ETAP_SUBS_PROBE + ETAP_USER_BASE + 1)
277 #define ETAP_P_USER_EVENT2 (ETAP_SUBS_PROBE + ETAP_USER_BASE + 2)
278 #define ETAP_P_USER_EVENT3 (ETAP_SUBS_PROBE + ETAP_USER_BASE + 3)
279 #define ETAP_P_USER_EVENT4 (ETAP_SUBS_PROBE + ETAP_USER_BASE + 4)
280 #define ETAP_P_USER_EVENT5 (ETAP_SUBS_PROBE + ETAP_USER_BASE + 5)
281 #define ETAP_P_USER_EVENT6 (ETAP_SUBS_PROBE + ETAP_USER_BASE + 6)
282 #define ETAP_P_USER_EVENT7 (ETAP_SUBS_PROBE + ETAP_USER_BASE + 7)
283 #define ETAP_P_USER_EVENT8 (ETAP_SUBS_PROBE + ETAP_USER_BASE + 8)
284 #define ETAP_P_USER_EVENT9 (ETAP_SUBS_PROBE + ETAP_USER_BASE + 9)
285 #define ETAP_P_USER_EVENT10 (ETAP_SUBS_PROBE + ETAP_USER_BASE + 10)
286 #define ETAP_P_USER_EVENT11 (ETAP_SUBS_PROBE + ETAP_USER_BASE + 11)
287 #define ETAP_P_USER_EVENT12 (ETAP_SUBS_PROBE + ETAP_USER_BASE + 12)
288 #define ETAP_P_USER_EVENT13 (ETAP_SUBS_PROBE + ETAP_USER_BASE + 13)
289 #define ETAP_P_USER_EVENT14 (ETAP_SUBS_PROBE + ETAP_USER_BASE + 14)
290 #define ETAP_P_USER_EVENT15 (ETAP_SUBS_PROBE + ETAP_USER_BASE + 15)
291 #define ETAP_P_USER_EVENT16 (ETAP_SUBS_PROBE + ETAP_USER_BASE + 16)
292 #define ETAP_P_USER_EVENT17 (ETAP_SUBS_PROBE + ETAP_USER_BASE + 17)
293 #define ETAP_P_USER_EVENT18 (ETAP_SUBS_PROBE + ETAP_USER_BASE + 18)
294 #define ETAP_P_USER_EVENT19 (ETAP_SUBS_PROBE + ETAP_USER_BASE + 19)
295 #define ETAP_P_USER_EVENT20 (ETAP_SUBS_PROBE + ETAP_USER_BASE + 20)
296 #define ETAP_P_USER_EVENT21 (ETAP_SUBS_PROBE + ETAP_USER_BASE + 21)
297 #define ETAP_P_USER_EVENT22 (ETAP_SUBS_PROBE + ETAP_USER_BASE + 22)
298 #define ETAP_P_USER_EVENT23 (ETAP_SUBS_PROBE + ETAP_USER_BASE + 23)
299 #define ETAP_P_USER_EVENT24 (ETAP_SUBS_PROBE + ETAP_USER_BASE + 24)
300 #define ETAP_P_USER_EVENT25 (ETAP_SUBS_PROBE + ETAP_USER_BASE + 25)
301 #define ETAP_P_USER_EVENT26 (ETAP_SUBS_PROBE + ETAP_USER_BASE + 26)
302 #define ETAP_P_USER_EVENT27 (ETAP_SUBS_PROBE + ETAP_USER_BASE + 27)
303 #define ETAP_P_USER_EVENT28 (ETAP_SUBS_PROBE + ETAP_USER_BASE + 28)
304 #define ETAP_P_USER_EVENT29 (ETAP_SUBS_PROBE + ETAP_USER_BASE + 29)
305 #define ETAP_P_USER_EVENT30 (ETAP_SUBS_PROBE + ETAP_USER_BASE + 30)
306 #define ETAP_P_USER_EVENT31 (ETAP_SUBS_PROBE + ETAP_USER_BASE + 31)
308 /* probes 32-63 reserved for MK */
309 #define ETAP_SYS_BASE 32
311 #define ETAP_P_SYSCALL_MACH (ETAP_SUBS_PROBE + ETAP_SYS_BASE + 0)
312 #define ETAP_P_SYSCALL_UNIX (ETAP_SUBS_PROBE + ETAP_SYS_BASE + 1)
313 #define ETAP_P_THREAD_LIFE (ETAP_SUBS_PROBE + ETAP_SYS_BASE + 2)
314 #define ETAP_P_THREAD_CTX (ETAP_SUBS_PROBE + ETAP_SYS_BASE + 3)
315 #define ETAP_P_RPC (ETAP_SUBS_PROBE + ETAP_SYS_BASE + 4)
316 #define ETAP_P_INTERRUPT (ETAP_SUBS_PROBE + ETAP_SYS_BASE + 5)
317 #define ETAP_P_ACT_ABORT (ETAP_SUBS_PROBE + ETAP_SYS_BASE + 6)
318 #define ETAP_P_PRIORITY (ETAP_SUBS_PROBE + ETAP_SYS_BASE + 7)
319 #define ETAP_P_EXCEPTION (ETAP_SUBS_PROBE + ETAP_SYS_BASE + 8)
320 #define ETAP_P_DEPRESSION (ETAP_SUBS_PROBE + ETAP_SYS_BASE + 9)
321 #define ETAP_P_MISC (ETAP_SUBS_PROBE + ETAP_SYS_BASE + 10)
322 #define ETAP_P_DETAP (ETAP_SUBS_PROBE + ETAP_SYS_BASE + 11)
324 #endif /* __APPLE_API_UNSTABLE */
326 #ifdef __APPLE_API_OBSOLETE
327 /* ===========================
328 * ETAP Thread block reasons
329 * ===========================
332 #define BLOCKED_ON_UNDEFINED 0
333 #define BLOCKED_ON_CLEAR 0
335 #define BLOCKED_ON_SEMAPHORE 1
336 #define BLOCKED_ON_LOCK 2
337 #define BLOCKED_ON_LOCK_HANDOFF 3
338 #define BLOCKED_ON_MUTEX_LOCK 4
339 #define BLOCKED_ON_COMPLEX_LOCK 5
340 #define BLOCKED_ON_PORT_RCV 6
341 #define BLOCKED_ON_REAPER_DONE 7
342 #define BLOCKED_ON_IDLE_DONE 8
343 #define BLOCKED_ON_TERMINATION 9
345 #endif /* __APPLE_API_OBSOLETE */
347 #endif /* _MACH_ETAP_EVENTS_H_ */