Line 0
Link Here
|
|
|
1 |
commit e6cdd38e8f0fead14cd3c528e9a4b666e1871752 |
2 |
Author: John Baldwin <jhb@FreeBSD.org> |
3 |
Date: Sun Jun 12 21:24:42 2016 -0700 |
4 |
|
5 |
Add support for catching system calls to native FreeBSD targets. |
6 |
|
7 |
All platforms on FreeBSD use a shared system call table, so use a |
8 |
single XML file to describe the system calls available on each FreeBSD |
9 |
platform. |
10 |
|
11 |
Recent versions of FreeBSD include the identifier of the current |
12 |
system call when reporting a system call entry or exit event in the |
13 |
ptrace_lwpinfo structure obtained via PT_LWPINFO in fbsd_wait. As |
14 |
such, FreeBSD native targets do not use the gdbarch method to fetch |
15 |
the system call code. In addition, FreeBSD register sets fetched via |
16 |
ptrace do not include an equivalent of 'orig_rax' (on amd64 for |
17 |
example), so the system call code cannot be extracted from the |
18 |
available registers during a system call exit. However, GDB assumes |
19 |
that system call catch points are not supported if the gdbarch method |
20 |
is not present. As a workaround, FreeBSD ABIs install a dummy gdbarch |
21 |
method that throws an internal_error if it is ever invoked. |
22 |
|
23 |
gdb/ChangeLog: |
24 |
|
25 |
* configure.ac: Check for support for system call LWP fields on |
26 |
FreeBSD. |
27 |
* config.in, configure: Rebuild. |
28 |
* data-directory/Makefile.in (SYSCALLS_FILES): Add freebsd.xml. |
29 |
* fbsd-nat.c (fbsd_wait) [HAVE_STRUCT_PTRACE_LWPINFO_PL_SYSCALL_CODE]: |
30 |
Report system call events. |
31 |
[HAVE_STRUCT_PTRACE_LWPINFO_PL_SYSCALL_CODE] |
32 |
(fbsd_set_syscall_catchpoint): New function. |
33 |
(fbsd_nat_add_target) [HAVE_STRUCT_PTRACE_LWPINFO_PL_SYSCALL_CODE]: |
34 |
Set "to_set_syscall_catchpoint" to "fbsd_set_syscall_catchpoint". |
35 |
* fbsd-tdep.c: Include xml-syscall.h |
36 |
(fbsd_get_syscall_number): New function. |
37 |
(fbsd_init_abi): Set XML system call file name. |
38 |
Add "get_syscall_number" gdbarch method. |
39 |
* syscalls/freebsd.xml: New file. |
40 |
|
41 |
diff --git gdb/config.in gdb/config.in |
42 |
index 905caf0..c82a5b4 100644 |
43 |
--- gdb/config.in |
44 |
+++ gdb/config.in |
45 |
@@ -456,6 +456,9 @@ |
46 |
/* Define to 1 if `struct ptrace_lwpinfo' is a member of `pl_tdname'. */ |
47 |
#undef HAVE_STRUCT_PTRACE_LWPINFO_PL_TDNAME |
48 |
|
49 |
+/* Define to 1 if `struct ptrace_lwpinfo' is a member of `pl_syscall_code'. */ |
50 |
+#undef HAVE_STRUCT_PTRACE_LWPINFO_PL_SYSCALL_CODE |
51 |
+ |
52 |
/* Define to 1 if your system has struct reg in <machine/reg.h>. */ |
53 |
#undef HAVE_STRUCT_REG |
54 |
|
55 |
diff --git gdb/configure gdb/configure |
56 |
index 60ea884..ea11b50 100755 |
57 |
--- gdb/configure |
58 |
+++ gdb/configure |
59 |
@@ -12927,6 +12927,20 @@ _ACEOF |
60 |
fi |
61 |
|
62 |
|
63 |
+# See if <sys/ptrace.h> supports syscall fields on FreeBSD. The |
64 |
+# pl_syscall_code member of `struct ptrace_lwpinfo' was added in |
65 |
+# FreeBSD 10.3. |
66 |
+ac_fn_c_check_member "$LINENO" "struct ptrace_lwpinfo" "pl_syscall_code" "ac_cv_member_struct_ptrace_lwpinfo_pl_syscall_code" "#include <sys/ptrace.h> |
67 |
+" |
68 |
+if test "x$ac_cv_member_struct_ptrace_lwpinfo_pl_syscall_code" = x""yes; then : |
69 |
+ |
70 |
+cat >>confdefs.h <<_ACEOF |
71 |
+#define HAVE_STRUCT_PTRACE_LWPINFO_PL_SYSCALL_CODE 1 |
72 |
+_ACEOF |
73 |
+ |
74 |
+ |
75 |
+fi |
76 |
+ |
77 |
|
78 |
# Detect which type of /proc is in use, such as for Solaris. |
79 |
|
80 |
diff --git gdb/configure.ac gdb/configure.ac |
81 |
index 6a72f72..920c228 100644 |
82 |
--- gdb/configure.ac |
83 |
+++ gdb/configure.ac |
84 |
@@ -1526,6 +1526,11 @@ fi |
85 |
AC_CHECK_MEMBERS([struct ptrace_lwpinfo.pl_tdname], [], [], |
86 |
[#include <sys/ptrace.h>]) |
87 |
|
88 |
+# See if <sys/ptrace.h> supports syscall fields on FreeBSD. The |
89 |
+# pl_syscall_code member of `struct ptrace_lwpinfo' was added in |
90 |
+# FreeBSD 10.3. |
91 |
+AC_CHECK_MEMBERS([struct ptrace_lwpinfo.pl_syscall_code], [], [], |
92 |
+ [#include <sys/ptrace.h>]) |
93 |
|
94 |
# Detect which type of /proc is in use, such as for Solaris. |
95 |
|
96 |
diff --git gdb/data-directory/Makefile.in gdb/data-directory/Makefile.in |
97 |
index c05f379..0beca55 100644 |
98 |
--- gdb/data-directory/Makefile.in |
99 |
+++ gdb/data-directory/Makefile.in |
100 |
@@ -51,7 +51,8 @@ SYSCALLS_FILES = \ |
101 |
i386-linux.xml amd64-linux.xml \ |
102 |
sparc-linux.xml sparc64-linux.xml \ |
103 |
mips-o32-linux.xml mips-n32-linux.xml mips-n64-linux.xml \ |
104 |
- s390-linux.xml s390x-linux.xml |
105 |
+ s390-linux.xml s390x-linux.xml \ |
106 |
+ freebsd.xml |
107 |
|
108 |
PYTHON_DIR = python |
109 |
PYTHON_INSTALL_DIR = $(DESTDIR)$(GDB_DATADIR)/$(PYTHON_DIR) |
110 |
diff --git gdb/fbsd-nat.c gdb/fbsd-nat.c |
111 |
index dc65e29..c9548e9 100644 |
112 |
--- gdb/fbsd-nat.c |
113 |
+++ gdb/fbsd-nat.c |
114 |
@@ -779,6 +779,40 @@ fbsd_wait (struct target_ops *ops, |
115 |
return wptid; |
116 |
} |
117 |
#endif |
118 |
+ |
119 |
+ /* Note that PL_FLAG_SCE is set for any event reported while |
120 |
+ a thread is executing a system call in the kernel. In |
121 |
+ particular, signals that interrupt a sleep in a system |
122 |
+ call will report this flag as part of their event. Stops |
123 |
+ explicitly for system call entry and exit always use |
124 |
+ SIGTRAP, so only treat SIGTRAP events as system call |
125 |
+ entry/exit events. */ |
126 |
+ if (pl.pl_flags & (PL_FLAG_SCE | PL_FLAG_SCX) |
127 |
+ && ourstatus->value.sig == SIGTRAP) |
128 |
+ { |
129 |
+#ifdef HAVE_STRUCT_PTRACE_LWPINFO_PL_SYSCALL_CODE |
130 |
+ if (catch_syscall_enabled ()) |
131 |
+ { |
132 |
+ if (catching_syscall_number (pl.pl_syscall_code)) |
133 |
+ { |
134 |
+ if (pl.pl_flags & PL_FLAG_SCE) |
135 |
+ ourstatus->kind = TARGET_WAITKIND_SYSCALL_ENTRY; |
136 |
+ else |
137 |
+ ourstatus->kind = TARGET_WAITKIND_SYSCALL_RETURN; |
138 |
+ ourstatus->value.syscall_number = pl.pl_syscall_code; |
139 |
+ return wptid; |
140 |
+ } |
141 |
+ } |
142 |
+#endif |
143 |
+ /* If the core isn't interested in this event, just |
144 |
+ continue the process explicitly and wait for another |
145 |
+ event. Note that PT_SYSCALL is "sticky" on FreeBSD |
146 |
+ and once system call stops are enabled on a process |
147 |
+ it stops for all system call entries and exits. */ |
148 |
+ if (ptrace (PT_CONTINUE, pid, (caddr_t) 1, 0) == -1) |
149 |
+ perror_with_name (("ptrace")); |
150 |
+ continue; |
151 |
+ } |
152 |
} |
153 |
return wptid; |
154 |
} |
155 |
@@ -889,6 +923,19 @@ fbsd_remove_exec_catchpoint (struct target_ops *self, int pid) |
156 |
return 0; |
157 |
} |
158 |
#endif |
159 |
+ |
160 |
+#ifdef HAVE_STRUCT_PTRACE_LWPINFO_PL_SYSCALL_CODE |
161 |
+static int |
162 |
+fbsd_set_syscall_catchpoint (struct target_ops *self, int pid, int needed, |
163 |
+ int any_count, int table_size, int *table) |
164 |
+{ |
165 |
+ |
166 |
+ /* Ignore the arguments. inf-ptrace.c will use PT_SYSCALL which |
167 |
+ will catch all system call entries and exits. The system calls |
168 |
+ are filtered by GDB rather than the kernel. */ |
169 |
+ return 0; |
170 |
+} |
171 |
+#endif |
172 |
#endif |
173 |
|
174 |
void |
175 |
@@ -925,6 +972,9 @@ fbsd_nat_add_target (struct target_ops *t) |
176 |
t->to_insert_exec_catchpoint = fbsd_insert_exec_catchpoint; |
177 |
t->to_remove_exec_catchpoint = fbsd_remove_exec_catchpoint; |
178 |
#endif |
179 |
+#ifdef HAVE_STRUCT_PTRACE_LWPINFO_PL_SYSCALL_CODE |
180 |
+ t->to_set_syscall_catchpoint = fbsd_set_syscall_catchpoint; |
181 |
+#endif |
182 |
#endif |
183 |
add_target (t); |
184 |
} |
185 |
diff --git gdb/fbsd-tdep.c gdb/fbsd-tdep.c |
186 |
index e8f8605..4329f97 100644 |
187 |
--- gdb/fbsd-tdep.c |
188 |
+++ gdb/fbsd-tdep.c |
189 |
@@ -24,6 +24,7 @@ |
190 |
#include "regcache.h" |
191 |
#include "regset.h" |
192 |
#include "gdbthread.h" |
193 |
+#include "xml-syscall.h" |
194 |
|
195 |
#include "elf-bfd.h" |
196 |
#include "fbsd-tdep.h" |
197 |
@@ -317,6 +318,22 @@ fbsd_print_auxv_entry (struct gdbarch *gdbarch, struct ui_file *file, |
198 |
fprint_auxv_entry (file, name, description, format, type, val); |
199 |
} |
200 |
|
201 |
+/* Implement the "get_syscall_number" gdbarch method. */ |
202 |
+ |
203 |
+static LONGEST |
204 |
+fbsd_get_syscall_number (struct gdbarch *gdbarch, |
205 |
+ ptid_t ptid) |
206 |
+{ |
207 |
+ |
208 |
+ /* FreeBSD doesn't use gdbarch_get_syscall_number since FreeBSD |
209 |
+ native targets fetch the system call number from the |
210 |
+ 'pl_syscall_code' member of struct ptrace_lwpinfo in fbsd_wait. |
211 |
+ However, system call catching requires this function to be |
212 |
+ set. */ |
213 |
+ |
214 |
+ internal_error (__FILE__, __LINE__, _("fbsd_get_sycall_number called")); |
215 |
+} |
216 |
+ |
217 |
/* To be called from GDB_OSABI_FREEBSD_ELF handlers. */ |
218 |
|
219 |
void |
220 |
@@ -326,4 +343,8 @@ fbsd_init_abi (struct gdbarch_info info, struct gdbarch *gdbarch) |
221 |
set_gdbarch_core_thread_name (gdbarch, fbsd_core_thread_name); |
222 |
set_gdbarch_make_corefile_notes (gdbarch, fbsd_make_corefile_notes); |
223 |
set_gdbarch_print_auxv_entry (gdbarch, fbsd_print_auxv_entry); |
224 |
+ |
225 |
+ /* `catch syscall' */ |
226 |
+ set_xml_syscall_file_name (gdbarch, "syscalls/freebsd.xml"); |
227 |
+ set_gdbarch_get_syscall_number (gdbarch, fbsd_get_syscall_number); |
228 |
} |
229 |
diff --git gdb/syscalls/freebsd.xml gdb/syscalls/freebsd.xml |
230 |
new file mode 100644 |
231 |
index 0000000..fb7c38b |
232 |
--- /dev/null |
233 |
+++ gdb/syscalls/freebsd.xml |
234 |
@@ -0,0 +1,410 @@ |
235 |
+<?xml version="1.0"?> |
236 |
+<!-- Copyright (C) 2009-2016 Free Software Foundation, Inc. |
237 |
+ |
238 |
+ Copying and distribution of this file, with or without modification, |
239 |
+ are permitted in any medium without royalty provided the copyright |
240 |
+ notice and this notice are preserved. --> |
241 |
+ |
242 |
+<!DOCTYPE feature SYSTEM "gdb-syscalls.dtd"> |
243 |
+ |
244 |
+<!-- This file was generated using the following file: |
245 |
+ |
246 |
+ /usr/src/sys/sys/syscall.h |
247 |
+ |
248 |
+ The file mentioned above belongs to the FreeBSD Kernel. --> |
249 |
+ |
250 |
+<syscalls_info> |
251 |
+ <syscall name="syscall" number="0"/> |
252 |
+ <syscall name="exit" number="1"/> |
253 |
+ <syscall name="fork" number="2"/> |
254 |
+ <syscall name="read" number="3"/> |
255 |
+ <syscall name="write" number="4"/> |
256 |
+ <syscall name="open" number="5"/> |
257 |
+ <syscall name="close" number="6"/> |
258 |
+ <syscall name="wait4" number="7"/> |
259 |
+ <syscall name="link" number="9"/> |
260 |
+ <syscall name="unlink" number="10"/> |
261 |
+ <syscall name="chdir" number="12"/> |
262 |
+ <syscall name="fchdir" number="13"/> |
263 |
+ <syscall name="mknod" number="14"/> |
264 |
+ <syscall name="chmod" number="15"/> |
265 |
+ <syscall name="chown" number="16"/> |
266 |
+ <syscall name="break" number="17"/> |
267 |
+ <syscall name="getpid" number="20"/> |
268 |
+ <syscall name="mount" number="21"/> |
269 |
+ <syscall name="unmount" number="22"/> |
270 |
+ <syscall name="setuid" number="23"/> |
271 |
+ <syscall name="getuid" number="24"/> |
272 |
+ <syscall name="geteuid" number="25"/> |
273 |
+ <syscall name="ptrace" number="26"/> |
274 |
+ <syscall name="recvmsg" number="27"/> |
275 |
+ <syscall name="sendmsg" number="28"/> |
276 |
+ <syscall name="recvfrom" number="29"/> |
277 |
+ <syscall name="accept" number="30"/> |
278 |
+ <syscall name="getpeername" number="31"/> |
279 |
+ <syscall name="getsockname" number="32"/> |
280 |
+ <syscall name="access" number="33"/> |
281 |
+ <syscall name="chflags" number="34"/> |
282 |
+ <syscall name="fchflags" number="35"/> |
283 |
+ <syscall name="sync" number="36"/> |
284 |
+ <syscall name="kill" number="37"/> |
285 |
+ <syscall name="getppid" number="39"/> |
286 |
+ <syscall name="dup" number="41"/> |
287 |
+ <syscall name="pipe" number="42"/> |
288 |
+ <syscall name="getegid" number="43"/> |
289 |
+ <syscall name="profil" number="44"/> |
290 |
+ <syscall name="ktrace" number="45"/> |
291 |
+ <syscall name="getgid" number="47"/> |
292 |
+ <syscall name="getlogin" number="49"/> |
293 |
+ <syscall name="setlogin" number="50"/> |
294 |
+ <syscall name="acct" number="51"/> |
295 |
+ <syscall name="sigaltstack" number="53"/> |
296 |
+ <syscall name="ioctl" number="54"/> |
297 |
+ <syscall name="reboot" number="55"/> |
298 |
+ <syscall name="revoke" number="56"/> |
299 |
+ <syscall name="symlink" number="57"/> |
300 |
+ <syscall name="readlink" number="58"/> |
301 |
+ <syscall name="execve" number="59"/> |
302 |
+ <syscall name="umask" number="60"/> |
303 |
+ <syscall name="chroot" number="61"/> |
304 |
+ <syscall name="msync" number="65"/> |
305 |
+ <syscall name="vfork" number="66"/> |
306 |
+ <syscall name="sbrk" number="69"/> |
307 |
+ <syscall name="sstk" number="70"/> |
308 |
+ <syscall name="vadvise" number="72"/> |
309 |
+ <syscall name="munmap" number="73"/> |
310 |
+ <syscall name="mprotect" number="74"/> |
311 |
+ <syscall name="madvise" number="75"/> |
312 |
+ <syscall name="mincore" number="78"/> |
313 |
+ <syscall name="getgroups" number="79"/> |
314 |
+ <syscall name="setgroups" number="80"/> |
315 |
+ <syscall name="getpgrp" number="81"/> |
316 |
+ <syscall name="setpgid" number="82"/> |
317 |
+ <syscall name="setitimer" number="83"/> |
318 |
+ <syscall name="swapon" number="85"/> |
319 |
+ <syscall name="getitimer" number="86"/> |
320 |
+ <syscall name="getdtablesize" number="89"/> |
321 |
+ <syscall name="dup2" number="90"/> |
322 |
+ <syscall name="fcntl" number="92"/> |
323 |
+ <syscall name="select" number="93"/> |
324 |
+ <syscall name="fsync" number="95"/> |
325 |
+ <syscall name="setpriority" number="96"/> |
326 |
+ <syscall name="socket" number="97"/> |
327 |
+ <syscall name="connect" number="98"/> |
328 |
+ <syscall name="getpriority" number="100"/> |
329 |
+ <syscall name="bind" number="104"/> |
330 |
+ <syscall name="setsockopt" number="105"/> |
331 |
+ <syscall name="listen" number="106"/> |
332 |
+ <syscall name="gettimeofday" number="116"/> |
333 |
+ <syscall name="getrusage" number="117"/> |
334 |
+ <syscall name="getsockopt" number="118"/> |
335 |
+ <syscall name="readv" number="120"/> |
336 |
+ <syscall name="writev" number="121"/> |
337 |
+ <syscall name="settimeofday" number="122"/> |
338 |
+ <syscall name="fchown" number="123"/> |
339 |
+ <syscall name="fchmod" number="124"/> |
340 |
+ <syscall name="setreuid" number="126"/> |
341 |
+ <syscall name="setregid" number="127"/> |
342 |
+ <syscall name="rename" number="128"/> |
343 |
+ <syscall name="flock" number="131"/> |
344 |
+ <syscall name="mkfifo" number="132"/> |
345 |
+ <syscall name="sendto" number="133"/> |
346 |
+ <syscall name="shutdown" number="134"/> |
347 |
+ <syscall name="socketpair" number="135"/> |
348 |
+ <syscall name="mkdir" number="136"/> |
349 |
+ <syscall name="rmdir" number="137"/> |
350 |
+ <syscall name="utimes" number="138"/> |
351 |
+ <syscall name="adjtime" number="140"/> |
352 |
+ <syscall name="setsid" number="147"/> |
353 |
+ <syscall name="quotactl" number="148"/> |
354 |
+ <syscall name="nlm_syscall" number="154"/> |
355 |
+ <syscall name="nfssvc" number="155"/> |
356 |
+ <syscall name="lgetfh" number="160"/> |
357 |
+ <syscall name="getfh" number="161"/> |
358 |
+ <syscall name="sysarch" number="165"/> |
359 |
+ <syscall name="rtprio" number="166"/> |
360 |
+ <syscall name="semsys" number="169"/> |
361 |
+ <syscall name="msgsys" number="170"/> |
362 |
+ <syscall name="shmsys" number="171"/> |
363 |
+ <syscall name="setfib" number="175"/> |
364 |
+ <syscall name="ntp_adjtime" number="176"/> |
365 |
+ <syscall name="setgid" number="181"/> |
366 |
+ <syscall name="setegid" number="182"/> |
367 |
+ <syscall name="seteuid" number="183"/> |
368 |
+ <syscall name="stat" number="188"/> |
369 |
+ <syscall name="fstat" number="189"/> |
370 |
+ <syscall name="lstat" number="190"/> |
371 |
+ <syscall name="pathconf" number="191"/> |
372 |
+ <syscall name="fpathconf" number="192"/> |
373 |
+ <syscall name="getrlimit" number="194"/> |
374 |
+ <syscall name="setrlimit" number="195"/> |
375 |
+ <syscall name="getdirentries" number="196"/> |
376 |
+ <syscall name="__syscall" number="198"/> |
377 |
+ <syscall name="__sysctl" number="202"/> |
378 |
+ <syscall name="mlock" number="203"/> |
379 |
+ <syscall name="munlock" number="204"/> |
380 |
+ <syscall name="undelete" number="205"/> |
381 |
+ <syscall name="futimes" number="206"/> |
382 |
+ <syscall name="getpgid" number="207"/> |
383 |
+ <syscall name="poll" number="209"/> |
384 |
+ <syscall name="freebsd7___semctl" number="220"/> |
385 |
+ <syscall name="semget" number="221"/> |
386 |
+ <syscall name="semop" number="222"/> |
387 |
+ <syscall name="freebsd7_msgctl" number="224"/> |
388 |
+ <syscall name="msgget" number="225"/> |
389 |
+ <syscall name="msgsnd" number="226"/> |
390 |
+ <syscall name="msgrcv" number="227"/> |
391 |
+ <syscall name="shmat" number="228"/> |
392 |
+ <syscall name="freebsd7_shmctl" number="229"/> |
393 |
+ <syscall name="shmdt" number="230"/> |
394 |
+ <syscall name="shmget" number="231"/> |
395 |
+ <syscall name="clock_gettime" number="232"/> |
396 |
+ <syscall name="clock_settime" number="233"/> |
397 |
+ <syscall name="clock_getres" number="234"/> |
398 |
+ <syscall name="ktimer_create" number="235"/> |
399 |
+ <syscall name="ktimer_delete" number="236"/> |
400 |
+ <syscall name="ktimer_settime" number="237"/> |
401 |
+ <syscall name="ktimer_gettime" number="238"/> |
402 |
+ <syscall name="ktimer_getoverrun" number="239"/> |
403 |
+ <syscall name="nanosleep" number="240"/> |
404 |
+ <syscall name="ffclock_getcounter" number="241"/> |
405 |
+ <syscall name="ffclock_setestimate" number="242"/> |
406 |
+ <syscall name="ffclock_getestimate" number="243"/> |
407 |
+ <syscall name="clock_getcpuclockid2" number="247"/> |
408 |
+ <syscall name="ntp_gettime" number="248"/> |
409 |
+ <syscall name="minherit" number="250"/> |
410 |
+ <syscall name="rfork" number="251"/> |
411 |
+ <syscall name="openbsd_poll" number="252"/> |
412 |
+ <syscall name="issetugid" number="253"/> |
413 |
+ <syscall name="lchown" number="254"/> |
414 |
+ <syscall name="aio_read" number="255"/> |
415 |
+ <syscall name="aio_write" number="256"/> |
416 |
+ <syscall name="lio_listio" number="257"/> |
417 |
+ <syscall name="getdents" number="272"/> |
418 |
+ <syscall name="lchmod" number="274"/> |
419 |
+ <syscall name="netbsd_lchown" number="275"/> |
420 |
+ <syscall name="lutimes" number="276"/> |
421 |
+ <syscall name="netbsd_msync" number="277"/> |
422 |
+ <syscall name="nstat" number="278"/> |
423 |
+ <syscall name="nfstat" number="279"/> |
424 |
+ <syscall name="nlstat" number="280"/> |
425 |
+ <syscall name="preadv" number="289"/> |
426 |
+ <syscall name="pwritev" number="290"/> |
427 |
+ <syscall name="fhopen" number="298"/> |
428 |
+ <syscall name="fhstat" number="299"/> |
429 |
+ <syscall name="modnext" number="300"/> |
430 |
+ <syscall name="modstat" number="301"/> |
431 |
+ <syscall name="modfnext" number="302"/> |
432 |
+ <syscall name="modfind" number="303"/> |
433 |
+ <syscall name="kldload" number="304"/> |
434 |
+ <syscall name="kldunload" number="305"/> |
435 |
+ <syscall name="kldfind" number="306"/> |
436 |
+ <syscall name="kldnext" number="307"/> |
437 |
+ <syscall name="kldstat" number="308"/> |
438 |
+ <syscall name="kldfirstmod" number="309"/> |
439 |
+ <syscall name="getsid" number="310"/> |
440 |
+ <syscall name="setresuid" number="311"/> |
441 |
+ <syscall name="setresgid" number="312"/> |
442 |
+ <syscall name="aio_return" number="314"/> |
443 |
+ <syscall name="aio_suspend" number="315"/> |
444 |
+ <syscall name="aio_cancel" number="316"/> |
445 |
+ <syscall name="aio_error" number="317"/> |
446 |
+ <syscall name="yield" number="321"/> |
447 |
+ <syscall name="mlockall" number="324"/> |
448 |
+ <syscall name="munlockall" number="325"/> |
449 |
+ <syscall name="__getcwd" number="326"/> |
450 |
+ <syscall name="sched_setparam" number="327"/> |
451 |
+ <syscall name="sched_getparam" number="328"/> |
452 |
+ <syscall name="sched_setscheduler" number="329"/> |
453 |
+ <syscall name="sched_getscheduler" number="330"/> |
454 |
+ <syscall name="sched_yield" number="331"/> |
455 |
+ <syscall name="sched_get_priority_max" number="332"/> |
456 |
+ <syscall name="sched_get_priority_min" number="333"/> |
457 |
+ <syscall name="sched_rr_get_interval" number="334"/> |
458 |
+ <syscall name="utrace" number="335"/> |
459 |
+ <syscall name="kldsym" number="337"/> |
460 |
+ <syscall name="jail" number="338"/> |
461 |
+ <syscall name="nnpfs_syscall" number="339"/> |
462 |
+ <syscall name="sigprocmask" number="340"/> |
463 |
+ <syscall name="sigsuspend" number="341"/> |
464 |
+ <syscall name="sigpending" number="343"/> |
465 |
+ <syscall name="sigtimedwait" number="345"/> |
466 |
+ <syscall name="sigwaitinfo" number="346"/> |
467 |
+ <syscall name="__acl_get_file" number="347"/> |
468 |
+ <syscall name="__acl_set_file" number="348"/> |
469 |
+ <syscall name="__acl_get_fd" number="349"/> |
470 |
+ <syscall name="__acl_set_fd" number="350"/> |
471 |
+ <syscall name="__acl_delete_file" number="351"/> |
472 |
+ <syscall name="__acl_delete_fd" number="352"/> |
473 |
+ <syscall name="__acl_aclcheck_file" number="353"/> |
474 |
+ <syscall name="__acl_aclcheck_fd" number="354"/> |
475 |
+ <syscall name="extattrctl" number="355"/> |
476 |
+ <syscall name="extattr_set_file" number="356"/> |
477 |
+ <syscall name="extattr_get_file" number="357"/> |
478 |
+ <syscall name="extattr_delete_file" number="358"/> |
479 |
+ <syscall name="aio_waitcomplete" number="359"/> |
480 |
+ <syscall name="getresuid" number="360"/> |
481 |
+ <syscall name="getresgid" number="361"/> |
482 |
+ <syscall name="kqueue" number="362"/> |
483 |
+ <syscall name="kevent" number="363"/> |
484 |
+ <syscall name="extattr_set_fd" number="371"/> |
485 |
+ <syscall name="extattr_get_fd" number="372"/> |
486 |
+ <syscall name="extattr_delete_fd" number="373"/> |
487 |
+ <syscall name="__setugid" number="374"/> |
488 |
+ <syscall name="eaccess" number="376"/> |
489 |
+ <syscall name="afs3_syscall" number="377"/> |
490 |
+ <syscall name="nmount" number="378"/> |
491 |
+ <syscall name="__mac_get_proc" number="384"/> |
492 |
+ <syscall name="__mac_set_proc" number="385"/> |
493 |
+ <syscall name="__mac_get_fd" number="386"/> |
494 |
+ <syscall name="__mac_get_file" number="387"/> |
495 |
+ <syscall name="__mac_set_fd" number="388"/> |
496 |
+ <syscall name="__mac_set_file" number="389"/> |
497 |
+ <syscall name="kenv" number="390"/> |
498 |
+ <syscall name="lchflags" number="391"/> |
499 |
+ <syscall name="uuidgen" number="392"/> |
500 |
+ <syscall name="sendfile" number="393"/> |
501 |
+ <syscall name="mac_syscall" number="394"/> |
502 |
+ <syscall name="getfsstat" number="395"/> |
503 |
+ <syscall name="statfs" number="396"/> |
504 |
+ <syscall name="fstatfs" number="397"/> |
505 |
+ <syscall name="fhstatfs" number="398"/> |
506 |
+ <syscall name="ksem_close" number="400"/> |
507 |
+ <syscall name="ksem_post" number="401"/> |
508 |
+ <syscall name="ksem_wait" number="402"/> |
509 |
+ <syscall name="ksem_trywait" number="403"/> |
510 |
+ <syscall name="ksem_init" number="404"/> |
511 |
+ <syscall name="ksem_open" number="405"/> |
512 |
+ <syscall name="ksem_unlink" number="406"/> |
513 |
+ <syscall name="ksem_getvalue" number="407"/> |
514 |
+ <syscall name="ksem_destroy" number="408"/> |
515 |
+ <syscall name="__mac_get_pid" number="409"/> |
516 |
+ <syscall name="__mac_get_link" number="410"/> |
517 |
+ <syscall name="__mac_set_link" number="411"/> |
518 |
+ <syscall name="extattr_set_link" number="412"/> |
519 |
+ <syscall name="extattr_get_link" number="413"/> |
520 |
+ <syscall name="extattr_delete_link" number="414"/> |
521 |
+ <syscall name="__mac_execve" number="415"/> |
522 |
+ <syscall name="sigaction" number="416"/> |
523 |
+ <syscall name="sigreturn" number="417"/> |
524 |
+ <syscall name="getcontext" number="421"/> |
525 |
+ <syscall name="setcontext" number="422"/> |
526 |
+ <syscall name="swapcontext" number="423"/> |
527 |
+ <syscall name="swapoff" number="424"/> |
528 |
+ <syscall name="__acl_get_link" number="425"/> |
529 |
+ <syscall name="__acl_set_link" number="426"/> |
530 |
+ <syscall name="__acl_delete_link" number="427"/> |
531 |
+ <syscall name="__acl_aclcheck_link" number="428"/> |
532 |
+ <syscall name="sigwait" number="429"/> |
533 |
+ <syscall name="thr_create" number="430"/> |
534 |
+ <syscall name="thr_exit" number="431"/> |
535 |
+ <syscall name="thr_self" number="432"/> |
536 |
+ <syscall name="thr_kill" number="433"/> |
537 |
+ <syscall name="jail_attach" number="436"/> |
538 |
+ <syscall name="extattr_list_fd" number="437"/> |
539 |
+ <syscall name="extattr_list_file" number="438"/> |
540 |
+ <syscall name="extattr_list_link" number="439"/> |
541 |
+ <syscall name="ksem_timedwait" number="441"/> |
542 |
+ <syscall name="thr_suspend" number="442"/> |
543 |
+ <syscall name="thr_wake" number="443"/> |
544 |
+ <syscall name="kldunloadf" number="444"/> |
545 |
+ <syscall name="audit" number="445"/> |
546 |
+ <syscall name="auditon" number="446"/> |
547 |
+ <syscall name="getauid" number="447"/> |
548 |
+ <syscall name="setauid" number="448"/> |
549 |
+ <syscall name="getaudit" number="449"/> |
550 |
+ <syscall name="setaudit" number="450"/> |
551 |
+ <syscall name="getaudit_addr" number="451"/> |
552 |
+ <syscall name="setaudit_addr" number="452"/> |
553 |
+ <syscall name="auditctl" number="453"/> |
554 |
+ <syscall name="_umtx_op" number="454"/> |
555 |
+ <syscall name="thr_new" number="455"/> |
556 |
+ <syscall name="sigqueue" number="456"/> |
557 |
+ <syscall name="kmq_open" number="457"/> |
558 |
+ <syscall name="kmq_setattr" number="458"/> |
559 |
+ <syscall name="kmq_timedreceive" number="459"/> |
560 |
+ <syscall name="kmq_timedsend" number="460"/> |
561 |
+ <syscall name="kmq_notify" number="461"/> |
562 |
+ <syscall name="kmq_unlink" number="462"/> |
563 |
+ <syscall name="abort2" number="463"/> |
564 |
+ <syscall name="thr_set_name" number="464"/> |
565 |
+ <syscall name="aio_fsync" number="465"/> |
566 |
+ <syscall name="rtprio_thread" number="466"/> |
567 |
+ <syscall name="sctp_peeloff" number="471"/> |
568 |
+ <syscall name="sctp_generic_sendmsg" number="472"/> |
569 |
+ <syscall name="sctp_generic_sendmsg_iov" number="473"/> |
570 |
+ <syscall name="sctp_generic_recvmsg" number="474"/> |
571 |
+ <syscall name="pread" number="475"/> |
572 |
+ <syscall name="pwrite" number="476"/> |
573 |
+ <syscall name="mmap" number="477"/> |
574 |
+ <syscall name="lseek" number="478"/> |
575 |
+ <syscall name="truncate" number="479"/> |
576 |
+ <syscall name="ftruncate" number="480"/> |
577 |
+ <syscall name="thr_kill2" number="481"/> |
578 |
+ <syscall name="shm_open" number="482"/> |
579 |
+ <syscall name="shm_unlink" number="483"/> |
580 |
+ <syscall name="cpuset" number="484"/> |
581 |
+ <syscall name="cpuset_setid" number="485"/> |
582 |
+ <syscall name="cpuset_getid" number="486"/> |
583 |
+ <syscall name="cpuset_getaffinity" number="487"/> |
584 |
+ <syscall name="cpuset_setaffinity" number="488"/> |
585 |
+ <syscall name="faccessat" number="489"/> |
586 |
+ <syscall name="fchmodat" number="490"/> |
587 |
+ <syscall name="fchownat" number="491"/> |
588 |
+ <syscall name="fexecve" number="492"/> |
589 |
+ <syscall name="fstatat" number="493"/> |
590 |
+ <syscall name="futimesat" number="494"/> |
591 |
+ <syscall name="linkat" number="495"/> |
592 |
+ <syscall name="mkdirat" number="496"/> |
593 |
+ <syscall name="mkfifoat" number="497"/> |
594 |
+ <syscall name="mknodat" number="498"/> |
595 |
+ <syscall name="openat" number="499"/> |
596 |
+ <syscall name="readlinkat" number="500"/> |
597 |
+ <syscall name="renameat" number="501"/> |
598 |
+ <syscall name="symlinkat" number="502"/> |
599 |
+ <syscall name="unlinkat" number="503"/> |
600 |
+ <syscall name="posix_openpt" number="504"/> |
601 |
+ <syscall name="gssd_syscall" number="505"/> |
602 |
+ <syscall name="jail_get" number="506"/> |
603 |
+ <syscall name="jail_set" number="507"/> |
604 |
+ <syscall name="jail_remove" number="508"/> |
605 |
+ <syscall name="closefrom" number="509"/> |
606 |
+ <syscall name="__semctl" number="510"/> |
607 |
+ <syscall name="msgctl" number="511"/> |
608 |
+ <syscall name="shmctl" number="512"/> |
609 |
+ <syscall name="lpathconf" number="513"/> |
610 |
+ <syscall name="__cap_rights_get" number="515"/> |
611 |
+ <syscall name="cap_enter" number="516"/> |
612 |
+ <syscall name="cap_getmode" number="517"/> |
613 |
+ <syscall name="pdfork" number="518"/> |
614 |
+ <syscall name="pdkill" number="519"/> |
615 |
+ <syscall name="pdgetpid" number="520"/> |
616 |
+ <syscall name="pselect" number="522"/> |
617 |
+ <syscall name="getloginclass" number="523"/> |
618 |
+ <syscall name="setloginclass" number="524"/> |
619 |
+ <syscall name="rctl_get_racct" number="525"/> |
620 |
+ <syscall name="rctl_get_rules" number="526"/> |
621 |
+ <syscall name="rctl_get_limits" number="527"/> |
622 |
+ <syscall name="rctl_add_rule" number="528"/> |
623 |
+ <syscall name="rctl_remove_rule" number="529"/> |
624 |
+ <syscall name="posix_fallocate" number="530"/> |
625 |
+ <syscall name="posix_fadvise" number="531"/> |
626 |
+ <syscall name="wait6" number="532"/> |
627 |
+ <syscall name="cap_rights_limit" number="533"/> |
628 |
+ <syscall name="cap_ioctls_limit" number="534"/> |
629 |
+ <syscall name="cap_ioctls_get" number="535"/> |
630 |
+ <syscall name="cap_fcntls_limit" number="536"/> |
631 |
+ <syscall name="cap_fcntls_get" number="537"/> |
632 |
+ <syscall name="bindat" number="538"/> |
633 |
+ <syscall name="connectat" number="539"/> |
634 |
+ <syscall name="chflagsat" number="540"/> |
635 |
+ <syscall name="accept4" number="541"/> |
636 |
+ <syscall name="pipe2" number="542"/> |
637 |
+ <syscall name="aio_mlock" number="543"/> |
638 |
+ <syscall name="procctl" number="544"/> |
639 |
+ <syscall name="ppoll" number="545"/> |
640 |
+ <syscall name="futimens" number="546"/> |
641 |
+ <syscall name="utimensat" number="547"/> |
642 |
+ <syscall name="numa_getaffinity" number="548"/> |
643 |
+ <syscall name="numa_setaffinity" number="549"/> |
644 |
+</syscalls_info> |