1 
2 /*--------------------------------------------------------------------*/
3 /*--- System call numbers for x86-linux.                           ---*/
4 /*---                                       vki-scnums-x86-linux.h ---*/
5 /*--------------------------------------------------------------------*/
6 
7 /*
8    This file is part of Valgrind, a dynamic binary instrumentation
9    framework.
10 
11    Copyright (C) 2000-2015 Julian Seward
12       jseward@acm.org
13 
14    This program is free software; you can redistribute it and/or
15    modify it under the terms of the GNU General Public License as
16    published by the Free Software Foundation; either version 2 of the
17    License, or (at your option) any later version.
18 
19    This program is distributed in the hope that it will be useful, but
20    WITHOUT ANY WARRANTY; without even the implied warranty of
21    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
22    General Public License for more details.
23 
24    You should have received a copy of the GNU General Public License
25    along with this program; if not, write to the Free Software
26    Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA
27    02111-1307, USA.
28 
29    The GNU General Public License is contained in the file COPYING.
30 */
31 
32 #ifndef __VKI_SCNUMS_X86_LINUX_H
33 #define __VKI_SCNUMS_X86_LINUX_H
34 
35 // Derived from linux-2.6/arch/x86/syscalls/syscall_32.tbl
36 
37 #define __NR_restart_syscall      0
38 #define __NR_exit		  1
39 #define __NR_fork		  2
40 #define __NR_read		  3
41 #define __NR_write		  4
42 #define __NR_open		  5
43 #define __NR_close		  6
44 #define __NR_waitpid		  7
45 #define __NR_creat		  8
46 #define __NR_link		  9
47 #define __NR_unlink		 10
48 #define __NR_execve		 11
49 #define __NR_chdir		 12
50 #define __NR_time		 13
51 #define __NR_mknod		 14
52 #define __NR_chmod		 15
53 #define __NR_lchown		 16
54 #define __NR_break		 17
55 #define __NR_oldstat		 18
56 #define __NR_lseek		 19
57 #define __NR_getpid		 20
58 #define __NR_mount		 21
59 #define __NR_umount		 22
60 #define __NR_setuid		 23
61 #define __NR_getuid		 24
62 #define __NR_stime		 25
63 #define __NR_ptrace		 26
64 #define __NR_alarm		 27
65 #define __NR_oldfstat		 28
66 #define __NR_pause		 29
67 #define __NR_utime		 30
68 #define __NR_stty		 31
69 #define __NR_gtty		 32
70 #define __NR_access		 33
71 #define __NR_nice		 34
72 #define __NR_ftime		 35
73 #define __NR_sync		 36
74 #define __NR_kill		 37
75 #define __NR_rename		 38
76 #define __NR_mkdir		 39
77 #define __NR_rmdir		 40
78 #define __NR_dup		 41
79 #define __NR_pipe		 42
80 #define __NR_times		 43
81 #define __NR_prof		 44
82 #define __NR_brk		 45
83 #define __NR_setgid		 46
84 #define __NR_getgid		 47
85 #define __NR_signal		 48
86 #define __NR_geteuid		 49
87 #define __NR_getegid		 50
88 #define __NR_acct		 51
89 #define __NR_umount2		 52
90 #define __NR_lock		 53
91 #define __NR_ioctl		 54
92 #define __NR_fcntl		 55
93 #define __NR_mpx		 56
94 #define __NR_setpgid		 57
95 #define __NR_ulimit		 58
96 #define __NR_oldolduname	 59
97 #define __NR_umask		 60
98 #define __NR_chroot		 61
99 #define __NR_ustat		 62
100 #define __NR_dup2		 63
101 #define __NR_getppid		 64
102 #define __NR_getpgrp		 65
103 #define __NR_setsid		 66
104 #define __NR_sigaction		 67
105 #define __NR_sgetmask		 68
106 #define __NR_ssetmask		 69
107 #define __NR_setreuid		 70
108 #define __NR_setregid		 71
109 #define __NR_sigsuspend		 72
110 #define __NR_sigpending		 73
111 #define __NR_sethostname	 74
112 #define __NR_setrlimit		 75
113 #define __NR_getrlimit		 76	/* Back compatible 2Gig limited rlimit */
114 #define __NR_getrusage		 77
115 #define __NR_gettimeofday	 78
116 #define __NR_settimeofday	 79
117 #define __NR_getgroups		 80
118 #define __NR_setgroups		 81
119 #define __NR_select		 82
120 #define __NR_symlink		 83
121 #define __NR_oldlstat		 84
122 #define __NR_readlink		 85
123 #define __NR_uselib		 86
124 #define __NR_swapon		 87
125 #define __NR_reboot		 88
126 #define __NR_readdir		 89
127 #define __NR_mmap		 90
128 #define __NR_munmap		 91
129 #define __NR_truncate		 92
130 #define __NR_ftruncate		 93
131 #define __NR_fchmod		 94
132 #define __NR_fchown		 95
133 #define __NR_getpriority	 96
134 #define __NR_setpriority	 97
135 #define __NR_profil		 98
136 #define __NR_statfs		 99
137 #define __NR_fstatfs		100
138 #define __NR_ioperm		101
139 #define __NR_socketcall		102
140 #define __NR_syslog		103
141 #define __NR_setitimer		104
142 #define __NR_getitimer		105
143 #define __NR_stat		106
144 #define __NR_lstat		107
145 #define __NR_fstat		108
146 #define __NR_olduname		109
147 #define __NR_iopl		110
148 #define __NR_vhangup		111
149 #define __NR_idle		112
150 #define __NR_vm86old		113
151 #define __NR_wait4		114
152 #define __NR_swapoff		115
153 #define __NR_sysinfo		116
154 #define __NR_ipc		117
155 #define __NR_fsync		118
156 #define __NR_sigreturn		119
157 #define __NR_clone		120
158 #define __NR_setdomainname	121
159 #define __NR_uname		122
160 #define __NR_modify_ldt		123
161 #define __NR_adjtimex		124
162 #define __NR_mprotect		125
163 #define __NR_sigprocmask	126
164 #define __NR_create_module	127
165 #define __NR_init_module	128
166 #define __NR_delete_module	129
167 #define __NR_get_kernel_syms	130
168 #define __NR_quotactl		131
169 #define __NR_getpgid		132
170 #define __NR_fchdir		133
171 #define __NR_bdflush		134
172 #define __NR_sysfs		135
173 #define __NR_personality	136
174 #define __NR_afs_syscall	137 /* Syscall for Andrew File System */
175 #define __NR_setfsuid		138
176 #define __NR_setfsgid		139
177 #define __NR__llseek		140
178 #define __NR_getdents		141
179 #define __NR__newselect		142
180 #define __NR_flock		143
181 #define __NR_msync		144
182 #define __NR_readv		145
183 #define __NR_writev		146
184 #define __NR_getsid		147
185 #define __NR_fdatasync		148
186 #define __NR__sysctl		149
187 #define __NR_mlock		150
188 #define __NR_munlock		151
189 #define __NR_mlockall		152
190 #define __NR_munlockall		153
191 #define __NR_sched_setparam		154
192 #define __NR_sched_getparam		155
193 #define __NR_sched_setscheduler		156
194 #define __NR_sched_getscheduler		157
195 #define __NR_sched_yield		158
196 #define __NR_sched_get_priority_max	159
197 #define __NR_sched_get_priority_min	160
198 #define __NR_sched_rr_get_interval	161
199 #define __NR_nanosleep		162
200 #define __NR_mremap		163
201 #define __NR_setresuid		164
202 #define __NR_getresuid		165
203 #define __NR_vm86		166
204 #define __NR_query_module	167
205 #define __NR_poll		168
206 #define __NR_nfsservctl		169
207 #define __NR_setresgid		170
208 #define __NR_getresgid		171
209 #define __NR_prctl              172
210 #define __NR_rt_sigreturn	173
211 #define __NR_rt_sigaction	174
212 #define __NR_rt_sigprocmask	175
213 #define __NR_rt_sigpending	176
214 #define __NR_rt_sigtimedwait	177
215 #define __NR_rt_sigqueueinfo	178
216 #define __NR_rt_sigsuspend	179
217 #define __NR_pread64		180
218 #define __NR_pwrite64		181
219 #define __NR_chown		182
220 #define __NR_getcwd		183
221 #define __NR_capget		184
222 #define __NR_capset		185
223 #define __NR_sigaltstack	186
224 #define __NR_sendfile		187
225 #define __NR_getpmsg		188	/* some people actually want streams */
226 #define __NR_putpmsg		189	/* some people actually want streams */
227 #define __NR_vfork		190
228 #define __NR_ugetrlimit		191	/* SuS compliant getrlimit */
229 #define __NR_mmap2		192
230 #define __NR_truncate64		193
231 #define __NR_ftruncate64	194
232 #define __NR_stat64		195
233 #define __NR_lstat64		196
234 #define __NR_fstat64		197
235 #define __NR_lchown32		198
236 #define __NR_getuid32		199
237 #define __NR_getgid32		200
238 #define __NR_geteuid32		201
239 #define __NR_getegid32		202
240 #define __NR_setreuid32		203
241 #define __NR_setregid32		204
242 #define __NR_getgroups32	205
243 #define __NR_setgroups32	206
244 #define __NR_fchown32		207
245 #define __NR_setresuid32	208
246 #define __NR_getresuid32	209
247 #define __NR_setresgid32	210
248 #define __NR_getresgid32	211
249 #define __NR_chown32		212
250 #define __NR_setuid32		213
251 #define __NR_setgid32		214
252 #define __NR_setfsuid32		215
253 #define __NR_setfsgid32		216
254 #define __NR_pivot_root		217
255 #define __NR_mincore		218
256 #define __NR_madvise		219
257 #define __NR_madvise1		219	/* delete when C lib stub is removed */
258 #define __NR_getdents64		220
259 #define __NR_fcntl64		221
260 /* 223 is unused */
261 #define __NR_gettid		224
262 #define __NR_readahead		225
263 #define __NR_setxattr		226
264 #define __NR_lsetxattr		227
265 #define __NR_fsetxattr		228
266 #define __NR_getxattr		229
267 #define __NR_lgetxattr		230
268 #define __NR_fgetxattr		231
269 #define __NR_listxattr		232
270 #define __NR_llistxattr		233
271 #define __NR_flistxattr		234
272 #define __NR_removexattr	235
273 #define __NR_lremovexattr	236
274 #define __NR_fremovexattr	237
275 #define __NR_tkill		238
276 #define __NR_sendfile64		239
277 #define __NR_futex		240
278 #define __NR_sched_setaffinity	241
279 #define __NR_sched_getaffinity	242
280 #define __NR_set_thread_area	243
281 #define __NR_get_thread_area	244
282 #define __NR_io_setup		245
283 #define __NR_io_destroy		246
284 #define __NR_io_getevents	247
285 #define __NR_io_submit		248
286 #define __NR_io_cancel		249
287 #define __NR_fadvise64		250
288 #define __NR_set_zone_reclaim	251
289 #define __NR_exit_group		252
290 #define __NR_lookup_dcookie	253
291 #define __NR_epoll_create	254
292 #define __NR_epoll_ctl		255
293 #define __NR_epoll_wait		256
294 #define __NR_remap_file_pages	257
295 #define __NR_set_tid_address	258
296 #define __NR_timer_create	259
297 #define __NR_timer_settime	(__NR_timer_create+1)
298 #define __NR_timer_gettime	(__NR_timer_create+2)
299 #define __NR_timer_getoverrun	(__NR_timer_create+3)
300 #define __NR_timer_delete	(__NR_timer_create+4)
301 #define __NR_clock_settime	(__NR_timer_create+5)
302 #define __NR_clock_gettime	(__NR_timer_create+6)
303 #define __NR_clock_getres	(__NR_timer_create+7)
304 #define __NR_clock_nanosleep	(__NR_timer_create+8)
305 #define __NR_statfs64		268
306 #define __NR_fstatfs64		269
307 #define __NR_tgkill		270
308 #define __NR_utimes		271
309 #define __NR_fadvise64_64	272
310 #define __NR_vserver		273
311 #define __NR_mbind		274
312 #define __NR_get_mempolicy	275
313 #define __NR_set_mempolicy	276
314 #define __NR_mq_open 		277
315 #define __NR_mq_unlink		(__NR_mq_open+1)
316 #define __NR_mq_timedsend	(__NR_mq_open+2)
317 #define __NR_mq_timedreceive	(__NR_mq_open+3)
318 #define __NR_mq_notify		(__NR_mq_open+4)
319 #define __NR_mq_getsetattr	(__NR_mq_open+5)
320 #define __NR_sys_kexec_load	283
321 #define __NR_waitid		284
322 /* #define __NR_sys_setaltroot	285 */
323 #define __NR_add_key		286
324 #define __NR_request_key	287
325 #define __NR_keyctl		288
326 #define __NR_ioprio_set		289
327 #define __NR_ioprio_get		290
328 #define __NR_inotify_init	291
329 #define __NR_inotify_add_watch	292
330 #define __NR_inotify_rm_watch	293
331 #define __NR_migrate_pages	294
332 #define __NR_openat		295
333 #define __NR_mkdirat		296
334 #define __NR_mknodat		297
335 #define __NR_fchownat		298
336 #define __NR_futimesat		299
337 #define __NR_fstatat64		300
338 #define __NR_unlinkat		301
339 #define __NR_renameat		302
340 #define __NR_linkat		303
341 #define __NR_symlinkat		304
342 #define __NR_readlinkat		305
343 #define __NR_fchmodat		306
344 #define __NR_faccessat		307
345 #define __NR_pselect6		308
346 #define __NR_ppoll		309
347 #define __NR_unshare		310
348 #define __NR_set_robust_list	311
349 #define __NR_get_robust_list	312
350 #define __NR_splice		313
351 #define __NR_sync_file_range	314
352 #define __NR_tee		315
353 #define __NR_vmsplice		316
354 #define __NR_move_pages		317
355 #define __NR_getcpu		318
356 #define __NR_epoll_pwait	319
357 #define __NR_utimensat		320
358 #define __NR_signalfd		321
359 #define __NR_timerfd_create	322
360 #define __NR_eventfd		323
361 #define __NR_fallocate		324
362 #define __NR_timerfd_settime	325
363 #define __NR_timerfd_gettime	326
364 #define __NR_signalfd4          327
365 #define __NR_eventfd2           328
366 #define __NR_epoll_create1      329
367 #define __NR_dup3               330
368 #define __NR_pipe2              331
369 #define __NR_inotify_init1      332
370 #define __NR_preadv             333
371 #define __NR_pwritev            334
372 #define __NR_rt_tgsigqueueinfo  335
373 #define __NR_perf_event_open	336
374 #define __NR_recvmmsg		337
375 #define __NR_fanotify_init	338
376 #define __NR_fanotify_mark	339
377 #define __NR_prlimit64		340
378 #define __NR_name_to_handle_at	341
379 #define __NR_open_by_handle_at  342
380 #define __NR_clock_adjtime	343
381 #define __NR_syncfs             344
382 #define __NR_sendmmsg		345
383 #define __NR_setns		346
384 #define __NR_process_vm_readv   347
385 #define __NR_process_vm_writev  348
386 #define __NR_kcmp               349
387 #define __NR_finit_module       350
388 #define __NR_sched_setattr      351
389 #define __NR_sched_getattr      352
390 #define __NR_renameat2          353
391 #define __NR_seccomp            354
392 #define __NR_getrandom          355
393 #define __NR_memfd_create       356
394 #define __NR_bpf                357
395 
396 #endif /* __VKI_SCNUMS_X86_LINUX_H */
397 
398 /*--------------------------------------------------------------------*/
399 /*--- end                                                          ---*/
400 /*--------------------------------------------------------------------*/
401