1 #define __SYSCALL_LL(x) (x)
3 static inline long __syscall0(long __n)
6 __asm__ __volatile__ ("syscall" : "=a"(__ret) : "a"(__n) : "rcx", "r11", "memory");
10 static inline long __syscall1(long __n, long __a1)
13 __asm__ __volatile__ ("syscall" : "=a"(__ret) : "a"(__n), "D"(__a1) : "rcx", "r11", "memory");
17 static inline long __syscall2(long __n, long __a1, long __a2)
20 __asm__ __volatile__ ("syscall" : "=a"(__ret) : "a"(__n), "D"(__a1), "S"(__a2)
21 : "rcx", "r11", "memory");
25 static inline long __syscall3(long __n, long __a1, long __a2, long __a3)
28 __asm__ __volatile__ ("syscall" : "=a"(__ret) : "a"(__n), "D"(__a1), "S"(__a2),
29 "d"(__a3) : "rcx", "r11", "memory");
33 static inline long __syscall4(long __n, long __a1, long __a2, long __a3, long __a4)
36 register long __r10 __asm__("r10") = __a4;
37 __asm__ __volatile__ ("syscall" : "=a"(__ret) : "a"(__n), "D"(__a1), "S"(__a2),
38 "d"(__a3), "r"(__r10): "rcx", "r11", "memory");
42 static inline long __syscall5(long __n, long __a1, long __a2, long __a3, long __a4, long __a5)
45 register long __r10 __asm__("r10") = __a4;
46 register long __r8 __asm__("r8") = __a5;
47 __asm__ __volatile__ ("syscall" : "=a"(__ret) : "a"(__n), "D"(__a1), "S"(__a2),
48 "d"(__a3), "r"(__r10), "r"(__r8) : "rcx", "r11", "memory");
52 static inline long __syscall6(long __n, long __a1, long __a2, long __a3, long __a4, long __a5, long __a6)
55 register long __r10 __asm__("r10") = __a4;
56 register long __r8 __asm__("r8") = __a5;
57 register long __r9 __asm__("r9") = __a6;
58 __asm__ __volatile__ ("syscall" : "=a"(__ret) : "a"(__n), "D"(__a1), "S"(__a2),
59 "d"(__a3), "r"(__r10), "r"(__r8), "r"(__r9) : "rcx", "r11", "memory");
63 #define __socketcall(nm,a,b,c,d,e,f) syscall(__NR_##nm, a, b, c, d, e, f)
64 #define __socketcall_cp(nm,a,b,c,d,e,f) syscall_cp(__NR_##nm, a, b, c, d, e, f)
76 #define __NR_mprotect 10
77 #define __NR_munmap 11
79 #define __NR_rt_sigaction 13
80 #define __NR_rt_sigprocmask 14
81 #define __NR_rt_sigreturn 15
83 #define __NR_pread64 17
84 #define __NR_pwrite64 18
86 #define __NR_writev 20
87 #define __NR_access 21
89 #define __NR_select 23
90 #define __NR_sched_yield 24
91 #define __NR_mremap 25
93 #define __NR_mincore 27
94 #define __NR_madvise 28
95 #define __NR_shmget 29
97 #define __NR_shmctl 31
100 #define __NR_pause 34
101 #define __NR_nanosleep 35
102 #define __NR_getitimer 36
103 #define __NR_alarm 37
104 #define __NR_setitimer 38
105 #define __NR_getpid 39
106 #define __NR_sendfile 40
107 #define __NR_socket 41
108 #define __NR_connect 42
109 #define __NR_accept 43
110 #define __NR_sendto 44
111 #define __NR_recvfrom 45
112 #define __NR_sendmsg 46
113 #define __NR_recvmsg 47
114 #define __NR_shutdown 48
116 #define __NR_listen 50
117 #define __NR_getsockname 51
118 #define __NR_getpeername 52
119 #define __NR_socketpair 53
120 #define __NR_setsockopt 54
121 #define __NR_getsockopt 55
122 #define __NR_clone 56
124 #define __NR_vfork 58
125 #define __NR_execve 59
127 #define __NR_wait4 61
129 #define __NR_uname 63
130 #define __NR_semget 64
131 #define __NR_semop 65
132 #define __NR_semctl 66
133 #define __NR_shmdt 67
134 #define __NR_msgget 68
135 #define __NR_msgsnd 69
136 #define __NR_msgrcv 70
137 #define __NR_msgctl 71
138 #define __NR_fcntl 72
139 #define __NR_flock 73
140 #define __NR_fsync 74
141 #define __NR_fdatasync 75
142 #define __NR_truncate 76
143 #define __NR_ftruncate 77
144 #define __NR_getdents 78
145 #define __NR_getcwd 79
146 #define __NR_chdir 80
147 #define __NR_fchdir 81
148 #define __NR_rename 82
149 #define __NR_mkdir 83
150 #define __NR_rmdir 84
151 #define __NR_creat 85
153 #define __NR_unlink 87
154 #define __NR_symlink 88
155 #define __NR_readlink 89
156 #define __NR_chmod 90
157 #define __NR_fchmod 91
158 #define __NR_chown 92
159 #define __NR_fchown 93
160 #define __NR_lchown 94
161 #define __NR_umask 95
162 #define __NR_gettimeofday 96
163 #define __NR_getrlimit 97
164 #define __NR_getrusage 98
165 #define __NR_sysinfo 99
166 #define __NR_times 100
167 #define __NR_ptrace 101
168 #define __NR_getuid 102
169 #define __NR_syslog 103
170 #define __NR_getgid 104
171 #define __NR_setuid 105
172 #define __NR_setgid 106
173 #define __NR_geteuid 107
174 #define __NR_getegid 108
175 #define __NR_setpgid 109
176 #define __NR_getppid 110
177 #define __NR_getpgrp 111
178 #define __NR_setsid 112
179 #define __NR_setreuid 113
180 #define __NR_setregid 114
181 #define __NR_getgroups 115
182 #define __NR_setgroups 116
183 #define __NR_setresuid 117
184 #define __NR_getresuid 118
185 #define __NR_setresgid 119
186 #define __NR_getresgid 120
187 #define __NR_getpgid 121
188 #define __NR_setfsuid 122
189 #define __NR_setfsgid 123
190 #define __NR_getsid 124
191 #define __NR_capget 125
192 #define __NR_capset 126
193 #define __NR_rt_sigpending 127
194 #define __NR_rt_sigtimedwait 128
195 #define __NR_rt_sigqueueinfo 129
196 #define __NR_rt_sigsuspend 130
197 #define __NR_sigaltstack 131
198 #define __NR_utime 132
199 #define __NR_mknod 133
200 #define __NR_uselib 134
201 #define __NR_personality 135
202 #define __NR_ustat 136
203 #define __NR_statfs 137
204 #define __NR_fstatfs 138
205 #define __NR_sysfs 139
206 #define __NR_getpriority 140
207 #define __NR_setpriority 141
208 #define __NR_sched_setparam 142
209 #define __NR_sched_getparam 143
210 #define __NR_sched_setscheduler 144
211 #define __NR_sched_getscheduler 145
212 #define __NR_sched_get_priority_max 146
213 #define __NR_sched_get_priority_min 147
214 #define __NR_sched_rr_get_interval 148
215 #define __NR_mlock 149
216 #define __NR_munlock 150
217 #define __NR_mlockall 151
218 #define __NR_munlockall 152
219 #define __NR_vhangup 153
220 #define __NR_modify_ldt 154
221 #define __NR_pivot_root 155
222 #define __NR__sysctl 156
223 #define __NR_prctl 157
224 #define __NR_arch_prctl 158
225 #define __NR_adjtimex 159
226 #define __NR_setrlimit 160
227 #define __NR_chroot 161
228 #define __NR_sync 162
229 #define __NR_acct 163
230 #define __NR_settimeofday 164
231 #define __NR_mount 165
232 #define __NR_umount2 166
233 #define __NR_swapon 167
234 #define __NR_swapoff 168
235 #define __NR_reboot 169
236 #define __NR_sethostname 170
237 #define __NR_setdomainname 171
238 #define __NR_iopl 172
239 #define __NR_ioperm 173
240 #define __NR_create_module 174
241 #define __NR_init_module 175
242 #define __NR_delete_module 176
243 #define __NR_get_kernel_syms 177
244 #define __NR_query_module 178
245 #define __NR_quotactl 179
246 #define __NR_nfsservctl 180
247 #define __NR_getpmsg 181
248 #define __NR_putpmsg 182
249 #define __NR_afs_syscall 183
250 #define __NR_tuxcall 184
251 #define __NR_security 185
252 #define __NR_gettid 186
253 #define __NR_readahead 187
254 #define __NR_setxattr 188
255 #define __NR_lsetxattr 189
256 #define __NR_fsetxattr 190
257 #define __NR_getxattr 191
258 #define __NR_lgetxattr 192
259 #define __NR_fgetxattr 193
260 #define __NR_listxattr 194
261 #define __NR_llistxattr 195
262 #define __NR_flistxattr 196
263 #define __NR_removexattr 197
264 #define __NR_lremovexattr 198
265 #define __NR_fremovexattr 199
266 #define __NR_tkill 200
267 #define __NR_time 201
268 #define __NR_futex 202
269 #define __NR_sched_setaffinity 203
270 #define __NR_sched_getaffinity 204
271 #define __NR_set_thread_area 205
272 #define __NR_io_setup 206
273 #define __NR_io_destroy 207
274 #define __NR_io_getevents 208
275 #define __NR_io_submit 209
276 #define __NR_io_cancel 210
277 #define __NR_get_thread_area 211
278 #define __NR_lookup_dcookie 212
279 #define __NR_epoll_create 213
280 #define __NR_epoll_ctl_old 214
281 #define __NR_epoll_wait_old 215
282 #define __NR_remap_file_pages 216
283 #define __NR_getdents64 217
284 #define __NR_set_tid_address 218
285 #define __NR_restart_syscall 219
286 #define __NR_semtimedop 220
287 #define __NR_fadvise64 221
288 #define __NR_timer_create 222
289 #define __NR_timer_settime 223
290 #define __NR_timer_gettime 224
291 #define __NR_timer_getoverrun 225
292 #define __NR_timer_delete 226
293 #define __NR_clock_settime 227
294 #define __NR_clock_gettime 228
295 #define __NR_clock_getres 229
296 #define __NR_clock_nanosleep 230
297 #define __NR_exit_group 231
298 #define __NR_epoll_wait 232
299 #define __NR_epoll_ctl 233
300 #define __NR_tgkill 234
301 #define __NR_utimes 235
302 #define __NR_vserver 236
303 #define __NR_mbind 237
304 #define __NR_set_mempolicy 238
305 #define __NR_get_mempolicy 239
306 #define __NR_mq_open 240
307 #define __NR_mq_unlink 241
308 #define __NR_mq_timedsend 242
309 #define __NR_mq_timedreceive 243
310 #define __NR_mq_notify 244
311 #define __NR_mq_getsetattr 245
312 #define __NR_kexec_load 246
313 #define __NR_waitid 247
314 #define __NR_add_key 248
315 #define __NR_request_key 249
316 #define __NR_keyctl 250
317 #define __NR_ioprio_set 251
318 #define __NR_ioprio_get 252
319 #define __NR_inotify_init 253
320 #define __NR_inotify_add_watch 254
321 #define __NR_inotify_rm_watch 255
322 #define __NR_migrate_pages 256
323 #define __NR_openat 257
324 #define __NR_mkdirat 258
325 #define __NR_mknodat 259
326 #define __NR_fchownat 260
327 #define __NR_futimesat 261
328 #define __NR_newfstatat 262
329 #define __NR_unlinkat 263
330 #define __NR_renameat 264
331 #define __NR_linkat 265
332 #define __NR_symlinkat 266
333 #define __NR_readlinkat 267
334 #define __NR_fchmodat 268
335 #define __NR_faccessat 269
336 #define __NR_pselect6 270
337 #define __NR_ppoll 271
338 #define __NR_unshare 272
339 #define __NR_set_robust_list 273
340 #define __NR_get_robust_list 274
341 #define __NR_splice 275
343 #define __NR_sync_file_range 277
344 #define __NR_vmsplice 278
345 #define __NR_move_pages 279
346 #define __NR_utimensat 280
347 #define __NR_epoll_pwait 281
348 #define __NR_signalfd 282
349 #define __NR_timerfd_create 283
350 #define __NR_eventfd 284
351 #define __NR_fallocate 285
352 #define __NR_timerfd_settime 286
353 #define __NR_timerfd_gettime 287
354 #define __NR_accept4 288
355 #define __NR_signalfd4 289
356 #define __NR_eventfd2 290
357 #define __NR_epoll_create1 291
358 #define __NR_dup3 292
359 #define __NR_pipe2 293
360 #define __NR_inotify_init1 294
361 #define __NR_preadv 295
362 #define __NR_pwritev 296
363 #define __NR_rt_tgsigqueueinfo 297
364 #define __NR_perf_event_open 298
365 #define __NR_recvmmsg 299
366 #define __NR_fanotify_init 300
367 #define __NR_fanotify_mark 301
368 #define __NR_prlimit64 302
374 #define __NR_fstatat __NR_newfstatat
375 #define __NR_pread __NR_pread64
376 #define __NR_pwrite __NR_pwrite64
377 #define __NR_getdents __NR_getdents64
378 #define __NR_fadvise __NR_fadvise64
382 /* Repeat with SYS_ prefix */
394 #define SYS_mprotect 10
395 #define SYS_munmap 11
397 #define SYS_rt_sigaction 13
398 #define SYS_rt_sigprocmask 14
399 #define SYS_rt_sigreturn 15
401 #define SYS_pread64 17
402 #define SYS_pwrite64 18
404 #define SYS_writev 20
405 #define SYS_access 21
407 #define SYS_select 23
408 #define SYS_sched_yield 24
409 #define SYS_mremap 25
411 #define SYS_mincore 27
412 #define SYS_madvise 28
413 #define SYS_shmget 29
415 #define SYS_shmctl 31
419 #define SYS_nanosleep 35
420 #define SYS_getitimer 36
422 #define SYS_setitimer 38
423 #define SYS_getpid 39
424 #define SYS_sendfile 40
425 #define SYS_socket 41
426 #define SYS_connect 42
427 #define SYS_accept 43
428 #define SYS_sendto 44
429 #define SYS_recvfrom 45
430 #define SYS_sendmsg 46
431 #define SYS_recvmsg 47
432 #define SYS_shutdown 48
434 #define SYS_listen 50
435 #define SYS_getsockname 51
436 #define SYS_getpeername 52
437 #define SYS_socketpair 53
438 #define SYS_setsockopt 54
439 #define SYS_getsockopt 55
443 #define SYS_execve 59
448 #define SYS_semget 64
450 #define SYS_semctl 66
452 #define SYS_msgget 68
453 #define SYS_msgsnd 69
454 #define SYS_msgrcv 70
455 #define SYS_msgctl 71
459 #define SYS_fdatasync 75
460 #define SYS_truncate 76
461 #define SYS_ftruncate 77
462 #define SYS_getdents 78
463 #define SYS_getcwd 79
465 #define SYS_fchdir 81
466 #define SYS_rename 82
471 #define SYS_unlink 87
472 #define SYS_symlink 88
473 #define SYS_readlink 89
475 #define SYS_fchmod 91
477 #define SYS_fchown 93
478 #define SYS_lchown 94
480 #define SYS_gettimeofday 96
481 #define SYS_getrlimit 97
482 #define SYS_getrusage 98
483 #define SYS_sysinfo 99
484 #define SYS_times 100
485 #define SYS_ptrace 101
486 #define SYS_getuid 102
487 #define SYS_syslog 103
488 #define SYS_getgid 104
489 #define SYS_setuid 105
490 #define SYS_setgid 106
491 #define SYS_geteuid 107
492 #define SYS_getegid 108
493 #define SYS_setpgid 109
494 #define SYS_getppid 110
495 #define SYS_getpgrp 111
496 #define SYS_setsid 112
497 #define SYS_setreuid 113
498 #define SYS_setregid 114
499 #define SYS_getgroups 115
500 #define SYS_setgroups 116
501 #define SYS_setresuid 117
502 #define SYS_getresuid 118
503 #define SYS_setresgid 119
504 #define SYS_getresgid 120
505 #define SYS_getpgid 121
506 #define SYS_setfsuid 122
507 #define SYS_setfsgid 123
508 #define SYS_getsid 124
509 #define SYS_capget 125
510 #define SYS_capset 126
511 #define SYS_rt_sigpending 127
512 #define SYS_rt_sigtimedwait 128
513 #define SYS_rt_sigqueueinfo 129
514 #define SYS_rt_sigsuspend 130
515 #define SYS_sigaltstack 131
516 #define SYS_utime 132
517 #define SYS_mknod 133
518 #define SYS_uselib 134
519 #define SYS_personality 135
520 #define SYS_ustat 136
521 #define SYS_statfs 137
522 #define SYS_fstatfs 138
523 #define SYS_sysfs 139
524 #define SYS_getpriority 140
525 #define SYS_setpriority 141
526 #define SYS_sched_setparam 142
527 #define SYS_sched_getparam 143
528 #define SYS_sched_setscheduler 144
529 #define SYS_sched_getscheduler 145
530 #define SYS_sched_get_priority_max 146
531 #define SYS_sched_get_priority_min 147
532 #define SYS_sched_rr_get_interval 148
533 #define SYS_mlock 149
534 #define SYS_munlock 150
535 #define SYS_mlockall 151
536 #define SYS_munlockall 152
537 #define SYS_vhangup 153
538 #define SYS_modify_ldt 154
539 #define SYS_pivot_root 155
540 #define SYS__sysctl 156
541 #define SYS_prctl 157
542 #define SYS_arch_prctl 158
543 #define SYS_adjtimex 159
544 #define SYS_setrlimit 160
545 #define SYS_chroot 161
548 #define SYS_settimeofday 164
549 #define SYS_mount 165
550 #define SYS_umount2 166
551 #define SYS_swapon 167
552 #define SYS_swapoff 168
553 #define SYS_reboot 169
554 #define SYS_sethostname 170
555 #define SYS_setdomainname 171
557 #define SYS_ioperm 173
558 #define SYS_create_module 174
559 #define SYS_init_module 175
560 #define SYS_delete_module 176
561 #define SYS_get_kernel_syms 177
562 #define SYS_query_module 178
563 #define SYS_quotactl 179
564 #define SYS_nfsservctl 180
565 #define SYS_getpmsg 181
566 #define SYS_putpmsg 182
567 #define SYS_afs_syscall 183
568 #define SYS_tuxcall 184
569 #define SYS_security 185
570 #define SYS_gettid 186
571 #define SYS_readahead 187
572 #define SYS_setxattr 188
573 #define SYS_lsetxattr 189
574 #define SYS_fsetxattr 190
575 #define SYS_getxattr 191
576 #define SYS_lgetxattr 192
577 #define SYS_fgetxattr 193
578 #define SYS_listxattr 194
579 #define SYS_llistxattr 195
580 #define SYS_flistxattr 196
581 #define SYS_removexattr 197
582 #define SYS_lremovexattr 198
583 #define SYS_fremovexattr 199
584 #define SYS_tkill 200
586 #define SYS_futex 202
587 #define SYS_sched_setaffinity 203
588 #define SYS_sched_getaffinity 204
589 #define SYS_set_thread_area 205
590 #define SYS_io_setup 206
591 #define SYS_io_destroy 207
592 #define SYS_io_getevents 208
593 #define SYS_io_submit 209
594 #define SYS_io_cancel 210
595 #define SYS_get_thread_area 211
596 #define SYS_lookup_dcookie 212
597 #define SYS_epoll_create 213
598 #define SYS_epoll_ctl_old 214
599 #define SYS_epoll_wait_old 215
600 #define SYS_remap_file_pages 216
601 #define SYS_getdents64 217
602 #define SYS_set_tid_address 218
603 #define SYS_restart_syscall 219
604 #define SYS_semtimedop 220
605 #define SYS_fadvise64 221
606 #define SYS_timer_create 222
607 #define SYS_timer_settime 223
608 #define SYS_timer_gettime 224
609 #define SYS_timer_getoverrun 225
610 #define SYS_timer_delete 226
611 #define SYS_clock_settime 227
612 #define SYS_clock_gettime 228
613 #define SYS_clock_getres 229
614 #define SYS_clock_nanosleep 230
615 #define SYS_exit_group 231
616 #define SYS_epoll_wait 232
617 #define SYS_epoll_ctl 233
618 #define SYS_tgkill 234
619 #define SYS_utimes 235
620 #define SYS_vserver 236
621 #define SYS_mbind 237
622 #define SYS_set_mempolicy 238
623 #define SYS_get_mempolicy 239
624 #define SYS_mq_open 240
625 #define SYS_mq_unlink 241
626 #define SYS_mq_timedsend 242
627 #define SYS_mq_timedreceive 243
628 #define SYS_mq_notify 244
629 #define SYS_mq_getsetattr 245
630 #define SYS_kexec_load 246
631 #define SYS_waitid 247
632 #define SYS_add_key 248
633 #define SYS_request_key 249
634 #define SYS_keyctl 250
635 #define SYS_ioprio_set 251
636 #define SYS_ioprio_get 252
637 #define SYS_inotify_init 253
638 #define SYS_inotify_add_watch 254
639 #define SYS_inotify_rm_watch 255
640 #define SYS_migrate_pages 256
641 #define SYS_openat 257
642 #define SYS_mkdirat 258
643 #define SYS_mknodat 259
644 #define SYS_fchownat 260
645 #define SYS_futimesat 261
646 #define SYS_newfstatat 262
647 #define SYS_unlinkat 263
648 #define SYS_renameat 264
649 #define SYS_linkat 265
650 #define SYS_symlinkat 266
651 #define SYS_readlinkat 267
652 #define SYS_fchmodat 268
653 #define SYS_faccessat 269
654 #define SYS_pselect6 270
655 #define SYS_ppoll 271
656 #define SYS_unshare 272
657 #define SYS_set_robust_list 273
658 #define SYS_get_robust_list 274
659 #define SYS_splice 275
661 #define SYS_sync_file_range 277
662 #define SYS_vmsplice 278
663 #define SYS_move_pages 279
664 #define SYS_utimensat 280
665 #define SYS_epoll_pwait 281
666 #define SYS_signalfd 282
667 #define SYS_timerfd_create 283
668 #define SYS_eventfd 284
669 #define SYS_fallocate 285
670 #define SYS_timerfd_settime 286
671 #define SYS_timerfd_gettime 287
672 #define SYS_accept4 288
673 #define SYS_signalfd4 289
674 #define SYS_eventfd2 290
675 #define SYS_epoll_create1 291
677 #define SYS_pipe2 293
678 #define SYS_inotify_init1 294
679 #define SYS_preadv 295
680 #define SYS_pwritev 296
681 #define SYS_rt_tgsigqueueinfo 297
682 #define SYS_perf_event_open 298
683 #define SYS_recvmmsg 299
684 #define SYS_fanotify_init 300
685 #define SYS_fanotify_mark 301
686 #define SYS_prlimit64 302
692 #define SYS_fstatat SYS_newfstatat
693 #define SYS_pread SYS_pread64
694 #define SYS_pwrite SYS_pwrite64
695 #define SYS_getdents SYS_getdents64
696 #define SYS_fadvise SYS_fadvise64