8d6731861793af1f11fffd71300c20ded934af71
[musl] / arch / i386 / bits / syscall.h
1 #define __SYSCALL_LL_E(x) \
2 ((union { long long ll; long l[2]; }){ .ll = x }).l[0], \
3 ((union { long long ll; long l[2]; }){ .ll = x }).l[1]
4 #define __SYSCALL_LL_O(x) __SYSCALL_LL_E((x))
5
6 static inline long __syscall0(long __n)
7 {
8         unsigned long __ret;
9         __asm__ __volatile__ ("int $128" : "=a"(__ret) : "a"(__n) : "memory");
10         return __ret;
11 }
12
13 #ifndef __PIC__
14
15 static inline long __syscall1(long __n, long __a1)
16 {
17         unsigned long __ret;
18         __asm__ __volatile__ ("int $128" : "=a"(__ret) : "a"(__n), "b"(__a1) : "memory");
19         return __ret;
20 }
21
22 static inline long __syscall2(long __n, long __a1, long __a2)
23 {
24         unsigned long __ret;
25         __asm__ __volatile__ ("int $128" : "=a"(__ret) : "a"(__n), "b"(__a1), "c"(__a2) : "memory");
26         return __ret;
27 }
28
29 static inline long __syscall3(long __n, long __a1, long __a2, long __a3)
30 {
31         unsigned long __ret;
32         __asm__ __volatile__ ("int $128" : "=a"(__ret) : "a"(__n), "b"(__a1), "c"(__a2), "d"(__a3) : "memory");
33         return __ret;
34 }
35
36 static inline long __syscall4(long __n, long __a1, long __a2, long __a3, long __a4)
37 {
38         unsigned long __ret;
39         __asm__ __volatile__ ("int $128" : "=a"(__ret) : "a"(__n), "b"(__a1), "c"(__a2), "d"(__a3), "S"(__a4) : "memory");
40         return __ret;
41 }
42
43 static inline long __syscall5(long __n, long __a1, long __a2, long __a3, long __a4, long __a5)
44 {
45         unsigned long __ret;
46         __asm__ __volatile__ ("int $128" : "=a"(__ret) : "a"(__n), "b"(__a1), "c"(__a2), "d"(__a3), "S"(__a4), "D"(__a5) : "memory");
47         return __ret;
48 }
49
50 static inline long __syscall6(long __n, long __a1, long __a2, long __a3, long __a4, long __a5, long __a6)
51 {
52         unsigned long __ret;
53         __asm__ __volatile__ ("pushl %7 ; pushl %%ebp ; mov 4(%%esp),%%ebp ; int $128 ; popl %%ebp ; popl %%ecx"
54                 : "=a"(__ret) : "a"(__n), "b"(__a1), "c"(__a2), "d"(__a3), "S"(__a4), "D"(__a5), "g"(__a6) : "memory");
55         return __ret;
56 }
57
58 #else
59
60 static inline long __syscall1(long __n, long __a1)
61 {
62         unsigned long __ret;
63         __asm__ __volatile__ ("xchg %2,%%ebx ; int $128 ; xchg %2,%%ebx"
64                 : "=a"(__ret) : "a"(__n), "r"(__a1) : "memory");
65         return __ret;
66 }
67
68 static inline long __syscall2(long __n, long __a1, long __a2)
69 {
70         unsigned long __ret;
71         __asm__ __volatile__ ("xchg %2,%%ebx ; int $128 ; xchg %2,%%ebx"
72                 : "=a"(__ret) : "a"(__n), "r"(__a1), "c"(__a2) : "memory");
73         return __ret;
74 }
75
76 static inline long __syscall3(long __n, long __a1, long __a2, long __a3)
77 {
78         unsigned long __ret;
79         __asm__ __volatile__ ("xchg %2,%%ebx ; int $128 ; xchg %2,%%ebx"
80                 : "=a"(__ret) : "a"(__n), "r"(__a1), "c"(__a2), "d"(__a3) : "memory");
81         return __ret;
82 }
83
84 static inline long __syscall4(long __n, long __a1, long __a2, long __a3, long __a4)
85 {
86         unsigned long __ret;
87         __asm__ __volatile__ ("xchg %2,%%ebx ; int $128 ; xchg %2,%%ebx"
88                 : "=a"(__ret) : "a"(__n), "r"(__a1), "c"(__a2), "d"(__a3), "S"(__a4) : "memory");
89         return __ret;
90 }
91
92 #if 0
93 static inline long __syscall5(long __n, long __a1, long __a2, long __a3, long __a4, long __a5)
94 {
95         unsigned long __ret;
96         __asm__ __volatile__ ("pushl %2 ; pushl %%ebx ; mov 4(%%esp),%%ebx ; int $128 ; popl %%ebx ; popl %%ecx"
97                 : "=a"(__ret) : "a"(__n), "g"(__a1), "c"(__a2), "d"(__a3), "S"(__a4), "D"(__a5) : "memory");
98         return __ret;
99 }
100 #else
101 static inline long __syscall5(long __n, long __a1, long __a2, long __a3, long __a4, long __a5)
102 {
103         return (__syscall)(__n, __a1, __a2, __a3, __a4, __a5);
104 }
105 #endif
106
107 static inline long __syscall6(long __n, long __a1, long __a2, long __a3, long __a4, long __a5, long __a6)
108 {
109         return (__syscall)(__n, __a1, __a2, __a3, __a4, __a5, __a6);
110 }
111
112 #endif
113
114
115 #define __SC_socket      1
116 #define __SC_bind        2
117 #define __SC_connect     3
118 #define __SC_listen      4
119 #define __SC_accept      5
120 #define __SC_getsockname 6
121 #define __SC_getpeername 7
122 #define __SC_socketpair  8
123 #define __SC_send        9
124 #define __SC_recv        10
125 #define __SC_sendto      11
126 #define __SC_recvfrom    12
127 #define __SC_shutdown    13
128 #define __SC_setsockopt  14
129 #define __SC_getsockopt  15
130 #define __SC_sendmsg     16
131 #define __SC_recvmsg     17
132
133 #define __socketcall(nm,a,b,c,d,e,f) syscall(SYS_socketcall, __SC_##nm, \
134     ((long [6]){ (long)a, (long)b, (long)c, (long)d, (long)e, (long)f }))
135 #define __socketcall_cp(nm,a,b,c,d,e,f) syscall_cp(SYS_socketcall, __SC_##nm, \
136     ((long [6]){ (long)a, (long)b, (long)c, (long)d, (long)e, (long)f }))
137
138 #define __NR_restart_syscall      0
139 #define __NR_exit                 1
140 #define __NR_fork                 2
141 #define __NR_read                 3
142 #define __NR_write                4
143 #define __NR_open                 5
144 #define __NR_close                6
145 #define __NR_waitpid              7
146 #define __NR_creat                8
147 #define __NR_link                 9
148 #define __NR_unlink              10
149 #define __NR_execve              11
150 #define __NR_chdir               12
151 #define __NR_time                13
152 #define __NR_mknod               14
153 #define __NR_chmod               15
154 #define __NR_lchown              16
155 #define __NR_break               17
156 #define __NR_oldstat             18
157 #define __NR_lseek               19
158 #define __NR_getpid              20
159 #define __NR_mount               21
160 #define __NR_umount              22
161 #define __NR_setuid              23
162 #define __NR_getuid              24
163 #define __NR_stime               25
164 #define __NR_ptrace              26
165 #define __NR_alarm               27
166 #define __NR_oldfstat            28
167 #define __NR_pause               29
168 #define __NR_utime               30
169 #define __NR_stty                31
170 #define __NR_gtty                32
171 #define __NR_access              33
172 #define __NR_nice                34
173 #define __NR_ftime               35
174 #define __NR_sync                36
175 #define __NR_kill                37
176 #define __NR_rename              38
177 #define __NR_mkdir               39
178 #define __NR_rmdir               40
179 #define __NR_dup                 41
180 #define __NR_pipe                42
181 #define __NR_times               43
182 #define __NR_prof                44
183 #define __NR_brk                 45
184 #define __NR_setgid              46
185 #define __NR_getgid              47
186 #define __NR_signal              48
187 #define __NR_geteuid             49
188 #define __NR_getegid             50
189 #define __NR_acct                51
190 #define __NR_umount2             52
191 #define __NR_lock                53
192 #define __NR_ioctl               54
193 #define __NR_fcntl               55
194 #define __NR_mpx                 56
195 #define __NR_setpgid             57
196 #define __NR_ulimit              58
197 #define __NR_oldolduname         59
198 #define __NR_umask               60
199 #define __NR_chroot              61
200 #define __NR_ustat               62
201 #define __NR_dup2                63
202 #define __NR_getppid             64
203 #define __NR_getpgrp             65
204 #define __NR_setsid              66
205 #define __NR_sigaction           67
206 #define __NR_sgetmask            68
207 #define __NR_ssetmask            69
208 #define __NR_setreuid            70
209 #define __NR_setregid            71
210 #define __NR_sigsuspend          72
211 #define __NR_sigpending          73
212 #define __NR_sethostname         74
213 #define __NR_setrlimit           75
214 #define __NR_getrlimit           76   /* Back compatible 2Gig limited rlimit */
215 #define __NR_getrusage           77
216 #define __NR_gettimeofday        78
217 #define __NR_settimeofday        79
218 #define __NR_getgroups           80
219 #define __NR_setgroups           81
220 #define __NR_select              82
221 #define __NR_symlink             83
222 #define __NR_oldlstat            84
223 #define __NR_readlink            85
224 #define __NR_uselib              86
225 #define __NR_swapon              87
226 #define __NR_reboot              88
227 #define __NR_readdir             89
228 #define __NR_mmap                90
229 #define __NR_munmap              91
230 #define __NR_truncate            92
231 #define __NR_ftruncate           93
232 #define __NR_fchmod              94
233 #define __NR_fchown              95
234 #define __NR_getpriority         96
235 #define __NR_setpriority         97
236 #define __NR_profil              98
237 #define __NR_statfs             99
238 #define __NR_fstatfs            100
239 #define __NR_ioperm             101
240 #define __NR_socketcall         102
241 #define __NR_syslog             103
242 #define __NR_setitimer          104
243 #define __NR_getitimer          105
244 #define __NR_stat               106
245 #define __NR_lstat              107
246 #define __NR_fstat              108
247 #define __NR_olduname           109
248 #define __NR_iopl               110
249 #define __NR_vhangup            111
250 #define __NR_idle               112
251 #define __NR_vm86old            113
252 #define __NR_wait4              114
253 #define __NR_swapoff            115
254 #define __NR_sysinfo            116
255 #define __NR_ipc                117
256 #define __NR_fsync              118
257 #define __NR_sigreturn          119
258 #define __NR_clone              120
259 #define __NR_setdomainname      121
260 #define __NR_uname              122
261 #define __NR_modify_ldt         123
262 #define __NR_adjtimex           124
263 #define __NR_mprotect           125
264 #define __NR_sigprocmask        126
265 #define __NR_create_module      127
266 #define __NR_init_module        128
267 #define __NR_delete_module      129
268 #define __NR_get_kernel_syms    130
269 #define __NR_quotactl           131
270 #define __NR_getpgid            132
271 #define __NR_fchdir             133
272 #define __NR_bdflush            134
273 #define __NR_sysfs              135
274 #define __NR_personality        136
275 #define __NR_afs_syscall        137
276 #define __NR_setfsuid           138
277 #define __NR_setfsgid           139
278 #define __NR__llseek            140
279 #define __NR_getdents           141
280 #define __NR__newselect         142
281 #define __NR_flock              143
282 #define __NR_msync              144
283 #define __NR_readv              145
284 #define __NR_writev             146
285 #define __NR_getsid             147
286 #define __NR_fdatasync          148
287 #define __NR__sysctl            149
288 #define __NR_mlock              150
289 #define __NR_munlock            151
290 #define __NR_mlockall           152
291 #define __NR_munlockall         153
292 #define __NR_sched_setparam             154
293 #define __NR_sched_getparam             155
294 #define __NR_sched_setscheduler         156
295 #define __NR_sched_getscheduler         157
296 #define __NR_sched_yield                158
297 #define __NR_sched_get_priority_max     159
298 #define __NR_sched_get_priority_min     160
299 #define __NR_sched_rr_get_interval      161
300 #define __NR_nanosleep          162
301 #define __NR_mremap             163
302 #define __NR_setresuid          164
303 #define __NR_getresuid          165
304 #define __NR_vm86               166
305 #define __NR_query_module       167
306 #define __NR_poll               168
307 #define __NR_nfsservctl         169
308 #define __NR_setresgid          170
309 #define __NR_getresgid          171
310 #define __NR_prctl              172
311 #define __NR_rt_sigreturn       173
312 #define __NR_rt_sigaction       174
313 #define __NR_rt_sigprocmask     175
314 #define __NR_rt_sigpending      176
315 #define __NR_rt_sigtimedwait    177
316 #define __NR_rt_sigqueueinfo    178
317 #define __NR_rt_sigsuspend      179
318 #define __NR_pread64            180
319 #define __NR_pwrite64           181
320 #define __NR_chown              182
321 #define __NR_getcwd             183
322 #define __NR_capget             184
323 #define __NR_capset             185
324 #define __NR_sigaltstack        186
325 #define __NR_sendfile           187
326 #define __NR_getpmsg            188
327 #define __NR_putpmsg            189
328 #define __NR_vfork              190
329 #define __NR_ugetrlimit         191
330 #define __NR_mmap2              192
331 #define __NR_truncate64         193
332 #define __NR_ftruncate64        194
333 #define __NR_stat64             195
334 #define __NR_lstat64            196
335 #define __NR_fstat64            197
336 #define __NR_lchown32           198
337 #define __NR_getuid32           199
338 #define __NR_getgid32           200
339 #define __NR_geteuid32          201
340 #define __NR_getegid32          202
341 #define __NR_setreuid32         203
342 #define __NR_setregid32         204
343 #define __NR_getgroups32        205
344 #define __NR_setgroups32        206
345 #define __NR_fchown32           207
346 #define __NR_setresuid32        208
347 #define __NR_getresuid32        209
348 #define __NR_setresgid32        210
349 #define __NR_getresgid32        211
350 #define __NR_chown32            212
351 #define __NR_setuid32           213
352 #define __NR_setgid32           214
353 #define __NR_setfsuid32         215
354 #define __NR_setfsgid32         216
355 #define __NR_pivot_root         217
356 #define __NR_mincore            218
357 #define __NR_madvise            219
358 #define __NR_madvise1           219
359 #define __NR_getdents64         220
360 #define __NR_fcntl64            221
361 /* 223 is unused */
362 #define __NR_gettid             224
363 #define __NR_readahead          225
364 #define __NR_setxattr           226
365 #define __NR_lsetxattr          227
366 #define __NR_fsetxattr          228
367 #define __NR_getxattr           229
368 #define __NR_lgetxattr          230
369 #define __NR_fgetxattr          231
370 #define __NR_listxattr          232
371 #define __NR_llistxattr         233
372 #define __NR_flistxattr         234
373 #define __NR_removexattr        235
374 #define __NR_lremovexattr       236
375 #define __NR_fremovexattr       237
376 #define __NR_tkill              238
377 #define __NR_sendfile64         239
378 #define __NR_futex              240
379 #define __NR_sched_setaffinity  241
380 #define __NR_sched_getaffinity  242
381 #define __NR_set_thread_area    243
382 #define __NR_get_thread_area    244
383 #define __NR_io_setup           245
384 #define __NR_io_destroy         246
385 #define __NR_io_getevents       247
386 #define __NR_io_submit          248
387 #define __NR_io_cancel          249
388 #define __NR_fadvise64          250
389 /* 251 is available for reuse (was briefly sys_set_zone_reclaim) */
390 #define __NR_exit_group         252
391 #define __NR_lookup_dcookie     253
392 #define __NR_epoll_create       254
393 #define __NR_epoll_ctl          255
394 #define __NR_epoll_wait         256
395 #define __NR_remap_file_pages   257
396 #define __NR_set_tid_address    258
397 #define __NR_timer_create       259
398 #define __NR_timer_settime      (__NR_timer_create+1)
399 #define __NR_timer_gettime      (__NR_timer_create+2)
400 #define __NR_timer_getoverrun   (__NR_timer_create+3)
401 #define __NR_timer_delete       (__NR_timer_create+4)
402 #define __NR_clock_settime      (__NR_timer_create+5)
403 #define __NR_clock_gettime      (__NR_timer_create+6)
404 #define __NR_clock_getres       (__NR_timer_create+7)
405 #define __NR_clock_nanosleep    (__NR_timer_create+8)
406 #define __NR_statfs64           268
407 #define __NR_fstatfs64          269
408 #define __NR_tgkill             270
409 #define __NR_utimes             271
410 #define __NR_fadvise64_64       272
411 #define __NR_vserver            273
412 #define __NR_mbind              274
413 #define __NR_get_mempolicy      275
414 #define __NR_set_mempolicy      276
415 #define __NR_mq_open            277
416 #define __NR_mq_unlink          (__NR_mq_open+1)
417 #define __NR_mq_timedsend       (__NR_mq_open+2)
418 #define __NR_mq_timedreceive    (__NR_mq_open+3)
419 #define __NR_mq_notify          (__NR_mq_open+4)
420 #define __NR_mq_getsetattr      (__NR_mq_open+5)
421 #define __NR_kexec_load         283
422 #define __NR_waitid             284
423 /* #define __NR_sys_setaltroot  285 */
424 #define __NR_add_key            286
425 #define __NR_request_key        287
426 #define __NR_keyctl             288
427 #define __NR_ioprio_set         289
428 #define __NR_ioprio_get         290
429 #define __NR_inotify_init       291
430 #define __NR_inotify_add_watch  292
431 #define __NR_inotify_rm_watch   293
432 #define __NR_migrate_pages      294
433 #define __NR_openat             295
434 #define __NR_mkdirat            296
435 #define __NR_mknodat            297
436 #define __NR_fchownat           298
437 #define __NR_futimesat          299
438 #define __NR_fstatat64          300
439 #define __NR_unlinkat           301
440 #define __NR_renameat           302
441 #define __NR_linkat             303
442 #define __NR_symlinkat          304
443 #define __NR_readlinkat         305
444 #define __NR_fchmodat           306
445 #define __NR_faccessat          307
446 #define __NR_pselect6           308
447 #define __NR_ppoll              309
448 #define __NR_unshare            310
449 #define __NR_set_robust_list    311
450 #define __NR_get_robust_list    312
451 #define __NR_splice             313
452 #define __NR_sync_file_range    314
453 #define __NR_tee                315
454 #define __NR_vmsplice           316
455 #define __NR_move_pages         317
456 #define __NR_getcpu             318
457 #define __NR_epoll_pwait        319
458 #define __NR_utimensat          320
459 #define __NR_signalfd           321
460 #define __NR_timerfd_create     322
461 #define __NR_eventfd            323
462 #define __NR_fallocate          324
463 #define __NR_timerfd_settime    325
464 #define __NR_timerfd_gettime    326
465 #define __NR_signalfd4          327
466 #define __NR_eventfd2           328
467 #define __NR_epoll_create1      329
468 #define __NR_dup3               330
469 #define __NR_pipe2              331
470 #define __NR_inotify_init1      332
471 #define __NR_preadv             333
472 #define __NR_pwritev            334
473
474 /* fixup legacy 16-bit junk */
475 #undef __NR_lchown
476 #undef __NR_getuid
477 #undef __NR_getgid
478 #undef __NR_geteuid
479 #undef __NR_getegid
480 #undef __NR_setreuid
481 #undef __NR_setregid
482 #undef __NR_getgroups
483 #undef __NR_setgroups
484 #undef __NR_fchown
485 #undef __NR_setresuid
486 #undef __NR_getresuid
487 #undef __NR_setresgid
488 #undef __NR_getresgid
489 #undef __NR_chown
490 #undef __NR_setuid
491 #undef __NR_setgid
492 #undef __NR_setfsuid
493 #undef __NR_setfsgid
494 #define __NR_lchown __NR_lchown32
495 #define __NR_getuid __NR_getuid32
496 #define __NR_getgid __NR_getgid32
497 #define __NR_geteuid __NR_geteuid32
498 #define __NR_getegid __NR_getegid32
499 #define __NR_setreuid __NR_setreuid32
500 #define __NR_setregid __NR_setregid32
501 #define __NR_getgroups __NR_getgroups32
502 #define __NR_setgroups __NR_setgroups32
503 #define __NR_fchown __NR_fchown32
504 #define __NR_setresuid __NR_setresuid32
505 #define __NR_getresuid __NR_getresuid32
506 #define __NR_setresgid __NR_setresgid32
507 #define __NR_getresgid __NR_getresgid32
508 #define __NR_chown __NR_chown32
509 #define __NR_setuid __NR_setuid32
510 #define __NR_setgid __NR_setgid32
511 #define __NR_setfsuid __NR_setfsuid32
512 #define __NR_setfsgid __NR_setfsgid32
513
514
515 /* fixup legacy 32-bit-vs-lfs64 junk */
516 #undef __NR_fcntl
517 #undef __NR_getdents
518 #undef __NR_ftruncate
519 #undef __NR_truncate
520 #undef __NR_stat
521 #undef __NR_fstat
522 #undef __NR_lstat
523 #undef __NR_statfs
524 #undef __NR_fstatfs
525 #define __NR_fcntl __NR_fcntl64
526 #define __NR_getdents __NR_getdents64
527 #define __NR_ftruncate __NR_ftruncate64
528 #define __NR_truncate __NR_truncate64
529 #define __NR_stat __NR_stat64
530 #define __NR_fstat __NR_fstat64
531 #define __NR_lstat __NR_lstat64
532 #define __NR_statfs __NR_statfs64
533 #define __NR_fstatfs __NR_fstatfs64
534 #define __NR_fstatat __NR_fstatat64
535 #define __NR_pread __NR_pread64
536 #define __NR_pwrite __NR_pwrite64
537
538 #define __NR_fadvise __NR_fadvise64_64
539
540 #undef __NR_getrlimit
541 #define __NR_getrlimit __NR_ugetrlimit
542
543 #undef __NR_select
544 #define __NR_select __NR__newselect
545
546
547 /* Repeated with SYS_ prefix */
548
549 #define SYS_restart_syscall      0
550 #define SYS_exit                  1
551 #define SYS_fork                  2
552 #define SYS_read                  3
553 #define SYS_write                 4
554 #define SYS_open                  5
555 #define SYS_close                 6
556 #define SYS_waitpid               7
557 #define SYS_creat                 8
558 #define SYS_link                  9
559 #define SYS_unlink               10
560 #define SYS_execve               11
561 #define SYS_chdir                12
562 #define SYS_time                 13
563 #define SYS_mknod                14
564 #define SYS_chmod                15
565 #define SYS_lchown               16
566 #define SYS_break                17
567 #define SYS_oldstat              18
568 #define SYS_lseek                19
569 #define SYS_getpid               20
570 #define SYS_mount                21
571 #define SYS_umount               22
572 #define SYS_setuid               23
573 #define SYS_getuid               24
574 #define SYS_stime                25
575 #define SYS_ptrace               26
576 #define SYS_alarm                27
577 #define SYS_oldfstat             28
578 #define SYS_pause                29
579 #define SYS_utime                30
580 #define SYS_stty                 31
581 #define SYS_gtty                 32
582 #define SYS_access               33
583 #define SYS_nice                 34
584 #define SYS_ftime                35
585 #define SYS_sync                 36
586 #define SYS_kill                 37
587 #define SYS_rename               38
588 #define SYS_mkdir                39
589 #define SYS_rmdir                40
590 #define SYS_dup          41
591 #define SYS_pipe                 42
592 #define SYS_times                43
593 #define SYS_prof                 44
594 #define SYS_brk          45
595 #define SYS_setgid               46
596 #define SYS_getgid               47
597 #define SYS_signal               48
598 #define SYS_geteuid              49
599 #define SYS_getegid              50
600 #define SYS_acct                 51
601 #define SYS_umount2              52
602 #define SYS_lock                 53
603 #define SYS_ioctl                54
604 #define SYS_fcntl                55
605 #define SYS_mpx          56
606 #define SYS_setpgid              57
607 #define SYS_ulimit               58
608 #define SYS_oldolduname  59
609 #define SYS_umask                60
610 #define SYS_chroot               61
611 #define SYS_ustat                62
612 #define SYS_dup2                 63
613 #define SYS_getppid              64
614 #define SYS_getpgrp              65
615 #define SYS_setsid               66
616 #define SYS_sigaction            67
617 #define SYS_sgetmask             68
618 #define SYS_ssetmask             69
619 #define SYS_setreuid             70
620 #define SYS_setregid             71
621 #define SYS_sigsuspend           72
622 #define SYS_sigpending           73
623 #define SYS_sethostname  74
624 #define SYS_setrlimit            75
625 #define SYS_getrlimit            76   /* Back compatible 2Gig limited rlimit */
626 #define SYS_getrusage            77
627 #define SYS_gettimeofday         78
628 #define SYS_settimeofday         79
629 #define SYS_getgroups            80
630 #define SYS_setgroups            81
631 #define SYS_select               82
632 #define SYS_symlink              83
633 #define SYS_oldlstat             84
634 #define SYS_readlink             85
635 #define SYS_uselib               86
636 #define SYS_swapon               87
637 #define SYS_reboot               88
638 #define SYS_readdir              89
639 #define SYS_mmap                 90
640 #define SYS_munmap               91
641 #define SYS_truncate             92
642 #define SYS_ftruncate            93
643 #define SYS_fchmod               94
644 #define SYS_fchown               95
645 #define SYS_getpriority  96
646 #define SYS_setpriority  97
647 #define SYS_profil               98
648 #define SYS_statfs              99
649 #define SYS_fstatfs             100
650 #define SYS_ioperm              101
651 #define SYS_socketcall          102
652 #define SYS_syslog              103
653 #define SYS_setitimer           104
654 #define SYS_getitimer           105
655 #define SYS_stat                106
656 #define SYS_lstat               107
657 #define SYS_fstat               108
658 #define SYS_olduname            109
659 #define SYS_iopl                110
660 #define SYS_vhangup             111
661 #define SYS_idle                112
662 #define SYS_vm86old             113
663 #define SYS_wait4               114
664 #define SYS_swapoff             115
665 #define SYS_sysinfo             116
666 #define SYS_ipc         117
667 #define SYS_fsync               118
668 #define SYS_sigreturn           119
669 #define SYS_clone               120
670 #define SYS_setdomainname       121
671 #define SYS_uname               122
672 #define SYS_modify_ldt          123
673 #define SYS_adjtimex            124
674 #define SYS_mprotect            125
675 #define SYS_sigprocmask 126
676 #define SYS_create_module       127
677 #define SYS_init_module 128
678 #define SYS_delete_module       129
679 #define SYS_get_kernel_syms     130
680 #define SYS_quotactl            131
681 #define SYS_getpgid             132
682 #define SYS_fchdir              133
683 #define SYS_bdflush             134
684 #define SYS_sysfs               135
685 #define SYS_personality 136
686 #define SYS_afs_syscall 137
687 #define SYS_setfsuid            138
688 #define SYS_setfsgid            139
689 #define SYS__llseek             140
690 #define SYS_getdents            141
691 #define SYS__newselect          142
692 #define SYS_flock               143
693 #define SYS_msync               144
694 #define SYS_readv               145
695 #define SYS_writev              146
696 #define SYS_getsid              147
697 #define SYS_fdatasync           148
698 #define SYS__sysctl             149
699 #define SYS_mlock               150
700 #define SYS_munlock             151
701 #define SYS_mlockall            152
702 #define SYS_munlockall          153
703 #define SYS_sched_setparam              154
704 #define SYS_sched_getparam              155
705 #define SYS_sched_setscheduler          156
706 #define SYS_sched_getscheduler          157
707 #define SYS_sched_yield         158
708 #define SYS_sched_get_priority_max      159
709 #define SYS_sched_get_priority_min      160
710 #define SYS_sched_rr_get_interval       161
711 #define SYS_nanosleep           162
712 #define SYS_mremap              163
713 #define SYS_setresuid           164
714 #define SYS_getresuid           165
715 #define SYS_vm86                166
716 #define SYS_query_module        167
717 #define SYS_poll                168
718 #define SYS_nfsservctl          169
719 #define SYS_setresgid           170
720 #define SYS_getresgid           171
721 #define SYS_prctl              172
722 #define SYS_rt_sigreturn        173
723 #define SYS_rt_sigaction        174
724 #define SYS_rt_sigprocmask      175
725 #define SYS_rt_sigpending       176
726 #define SYS_rt_sigtimedwait     177
727 #define SYS_rt_sigqueueinfo     178
728 #define SYS_rt_sigsuspend       179
729 #define SYS_pread64             180
730 #define SYS_pwrite64            181
731 #define SYS_chown               182
732 #define SYS_getcwd              183
733 #define SYS_capget              184
734 #define SYS_capset              185
735 #define SYS_sigaltstack 186
736 #define SYS_sendfile            187
737 #define SYS_getpmsg             188
738 #define SYS_putpmsg             189
739 #define SYS_vfork               190
740 #define SYS_ugetrlimit          191
741 #define SYS_mmap2               192
742 #define SYS_truncate64          193
743 #define SYS_ftruncate64 194
744 #define SYS_stat64              195
745 #define SYS_lstat64             196
746 #define SYS_fstat64             197
747 #define SYS_lchown32            198
748 #define SYS_getuid32            199
749 #define SYS_getgid32            200
750 #define SYS_geteuid32           201
751 #define SYS_getegid32           202
752 #define SYS_setreuid32          203
753 #define SYS_setregid32          204
754 #define SYS_getgroups32 205
755 #define SYS_setgroups32 206
756 #define SYS_fchown32            207
757 #define SYS_setresuid32 208
758 #define SYS_getresuid32 209
759 #define SYS_setresgid32 210
760 #define SYS_getresgid32 211
761 #define SYS_chown32             212
762 #define SYS_setuid32            213
763 #define SYS_setgid32            214
764 #define SYS_setfsuid32          215
765 #define SYS_setfsgid32          216
766 #define SYS_pivot_root          217
767 #define SYS_mincore             218
768 #define SYS_madvise             219
769 #define SYS_madvise1            219
770 #define SYS_getdents64          220
771 #define SYS_fcntl64             221
772 /* 223 is unused */
773 #define SYS_gettid              224
774 #define SYS_readahead           225
775 #define SYS_setxattr            226
776 #define SYS_lsetxattr           227
777 #define SYS_fsetxattr           228
778 #define SYS_getxattr            229
779 #define SYS_lgetxattr           230
780 #define SYS_fgetxattr           231
781 #define SYS_listxattr           232
782 #define SYS_llistxattr          233
783 #define SYS_flistxattr          234
784 #define SYS_removexattr 235
785 #define SYS_lremovexattr        236
786 #define SYS_fremovexattr        237
787 #define SYS_tkill               238
788 #define SYS_sendfile64          239
789 #define SYS_futex               240
790 #define SYS_sched_setaffinity   241
791 #define SYS_sched_getaffinity   242
792 #define SYS_set_thread_area     243
793 #define SYS_get_thread_area     244
794 #define SYS_io_setup            245
795 #define SYS_io_destroy          246
796 #define SYS_io_getevents        247
797 #define SYS_io_submit           248
798 #define SYS_io_cancel           249
799 #define SYS_fadvise64           250
800 /* 251 is available for reuse (was briefly sys_set_zone_reclaim) */
801 #define SYS_exit_group          252
802 #define SYS_lookup_dcookie      253
803 #define SYS_epoll_create        254
804 #define SYS_epoll_ctl           255
805 #define SYS_epoll_wait          256
806 #define SYS_remap_file_pages    257
807 #define SYS_set_tid_address     258
808 #define SYS_timer_create        259
809 #define SYS_timer_settime       (SYS_timer_create+1)
810 #define SYS_timer_gettime       (SYS_timer_create+2)
811 #define SYS_timer_getoverrun    (SYS_timer_create+3)
812 #define SYS_timer_delete        (SYS_timer_create+4)
813 #define SYS_clock_settime       (SYS_timer_create+5)
814 #define SYS_clock_gettime       (SYS_timer_create+6)
815 #define SYS_clock_getres        (SYS_timer_create+7)
816 #define SYS_clock_nanosleep     (SYS_timer_create+8)
817 #define SYS_statfs64            268
818 #define SYS_fstatfs64           269
819 #define SYS_tgkill              270
820 #define SYS_utimes              271
821 #define SYS_fadvise64_64        272
822 #define SYS_vserver             273
823 #define SYS_mbind               274
824 #define SYS_get_mempolicy       275
825 #define SYS_set_mempolicy       276
826 #define SYS_mq_open             277
827 #define SYS_mq_unlink           (SYS_mq_open+1)
828 #define SYS_mq_timedsend        (SYS_mq_open+2)
829 #define SYS_mq_timedreceive     (SYS_mq_open+3)
830 #define SYS_mq_notify           (SYS_mq_open+4)
831 #define SYS_mq_getsetattr       (SYS_mq_open+5)
832 #define SYS_kexec_load          283
833 #define SYS_waitid              284
834 /* #define SYS_sys_setaltroot   285 */
835 #define SYS_add_key             286
836 #define SYS_request_key 287
837 #define SYS_keyctl              288
838 #define SYS_ioprio_set          289
839 #define SYS_ioprio_get          290
840 #define SYS_inotify_init        291
841 #define SYS_inotify_add_watch   292
842 #define SYS_inotify_rm_watch    293
843 #define SYS_migrate_pages       294
844 #define SYS_openat              295
845 #define SYS_mkdirat             296
846 #define SYS_mknodat             297
847 #define SYS_fchownat            298
848 #define SYS_futimesat           299
849 #define SYS_fstatat64           300
850 #define SYS_unlinkat            301
851 #define SYS_renameat            302
852 #define SYS_linkat              303
853 #define SYS_symlinkat           304
854 #define SYS_readlinkat          305
855 #define SYS_fchmodat            306
856 #define SYS_faccessat           307
857 #define SYS_pselect6            308
858 #define SYS_ppoll               309
859 #define SYS_unshare             310
860 #define SYS_set_robust_list     311
861 #define SYS_get_robust_list     312
862 #define SYS_splice              313
863 #define SYS_sync_file_range     314
864 #define SYS_tee         315
865 #define SYS_vmsplice            316
866 #define SYS_move_pages          317
867 #define SYS_getcpu              318
868 #define SYS_epoll_pwait 319
869 #define SYS_utimensat           320
870 #define SYS_signalfd            321
871 #define SYS_timerfd_create      322
872 #define SYS_eventfd             323
873 #define SYS_fallocate           324
874 #define SYS_timerfd_settime     325
875 #define SYS_timerfd_gettime     326
876 #define SYS_signalfd4           327
877 #define SYS_eventfd2            328
878 #define SYS_epoll_create1       329
879 #define SYS_dup3                330
880 #define SYS_pipe2               331
881 #define SYS_inotify_init1       332
882 #define SYS_preadv              333
883 #define SYS_pwritev             334
884
885 /* fixup legacy 16-bit junk */
886 #undef SYS_lchown
887 #undef SYS_getuid
888 #undef SYS_getgid
889 #undef SYS_geteuid
890 #undef SYS_getegid
891 #undef SYS_setreuid
892 #undef SYS_setregid
893 #undef SYS_getgroups
894 #undef SYS_setgroups
895 #undef SYS_fchown
896 #undef SYS_setresuid
897 #undef SYS_getresuid
898 #undef SYS_setresgid
899 #undef SYS_getresgid
900 #undef SYS_chown
901 #undef SYS_setuid
902 #undef SYS_setgid
903 #undef SYS_setfsuid
904 #undef SYS_setfsgid
905 #define SYS_lchown SYS_lchown32
906 #define SYS_getuid SYS_getuid32
907 #define SYS_getgid SYS_getgid32
908 #define SYS_geteuid SYS_geteuid32
909 #define SYS_getegid SYS_getegid32
910 #define SYS_setreuid SYS_setreuid32
911 #define SYS_setregid SYS_setregid32
912 #define SYS_getgroups SYS_getgroups32
913 #define SYS_setgroups SYS_setgroups32
914 #define SYS_fchown SYS_fchown32
915 #define SYS_setresuid SYS_setresuid32
916 #define SYS_getresuid SYS_getresuid32
917 #define SYS_setresgid SYS_setresgid32
918 #define SYS_getresgid SYS_getresgid32
919 #define SYS_chown SYS_chown32
920 #define SYS_setuid SYS_setuid32
921 #define SYS_setgid SYS_setgid32
922 #define SYS_setfsuid SYS_setfsuid32
923 #define SYS_setfsgid SYS_setfsgid32
924
925
926 /* fixup legacy 32-bit-vs-lfs64 junk */
927 #undef SYS_fcntl
928 #undef SYS_getdents
929 #undef SYS_ftruncate
930 #undef SYS_truncate
931 #undef SYS_stat
932 #undef SYS_fstat
933 #undef SYS_lstat
934 #undef SYS_statfs
935 #undef SYS_fstatfs
936 #define SYS_fcntl SYS_fcntl64
937 #define SYS_getdents SYS_getdents64
938 #define SYS_ftruncate SYS_ftruncate64
939 #define SYS_truncate SYS_truncate64
940 #define SYS_stat SYS_stat64
941 #define SYS_fstat SYS_fstat64
942 #define SYS_lstat SYS_lstat64
943 #define SYS_statfs SYS_statfs64
944 #define SYS_fstatfs SYS_fstatfs64
945 #define SYS_fstatat SYS_fstatat64
946 #define SYS_pread SYS_pread64
947 #define SYS_pwrite SYS_pwrite64
948
949 #define SYS_fadvise SYS_fadvise64_64
950
951 #undef SYS_getrlimit
952 #define SYS_getrlimit SYS_ugetrlimit
953
954 #undef SYS_select
955 #define SYS_select SYS__newselect