Back to home page

EIC code displayed by LXR

 
 

    


File indexing completed on 2025-01-18 10:13:25

0001 
0002 /*--------------------------------------------------------------------*/
0003 /*--- System call numbers for arm64-linux.                         ---*/
0004 /*---                                     vki-scnums-arm64-linux.h ---*/
0005 /*--------------------------------------------------------------------*/
0006 
0007 /*
0008    This file is part of Valgrind, a dynamic binary instrumentation
0009    framework.
0010 
0011    Copyright (C) 2013-2017 OpenWorks
0012       info@open-works.net
0013 
0014    This program is free software; you can redistribute it and/or
0015    modify it under the terms of the GNU General Public License as
0016    published by the Free Software Foundation; either version 2 of the
0017    License, or (at your option) any later version.
0018 
0019    This program is distributed in the hope that it will be useful, but
0020    WITHOUT ANY WARRANTY; without even the implied warranty of
0021    MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
0022    General Public License for more details.
0023 
0024    You should have received a copy of the GNU General Public License
0025    along with this program; if not, see <http://www.gnu.org/licenses/>.
0026 
0027    The GNU General Public License is contained in the file COPYING.
0028 */
0029 
0030 #ifndef __VKI_SCNUMS_ARM64_LINUX_H
0031 #define __VKI_SCNUMS_ARM64_LINUX_H
0032 
0033 // From linux-3.10.5/arch/arm64/include/uapi/asm/unistd.h
0034 // is a #include of
0035 //      linux-3.10.5/include/uapi/asm-generic/unistd.h
0036 
0037 #define __NR_io_setup 0
0038 #define __NR_io_destroy 1
0039 #define __NR_io_submit 2
0040 #define __NR_io_cancel 3
0041 #define __NR_io_getevents 4
0042 #define __NR_setxattr 5
0043 #define __NR_lsetxattr 6
0044 #define __NR_fsetxattr 7
0045 #define __NR_getxattr 8
0046 #define __NR_lgetxattr 9
0047 #define __NR_fgetxattr 10
0048 #define __NR_listxattr 11
0049 #define __NR_llistxattr 12
0050 #define __NR_flistxattr 13
0051 #define __NR_removexattr 14
0052 #define __NR_lremovexattr 15
0053 #define __NR_fremovexattr 16
0054 #define __NR_getcwd 17
0055 #define __NR_lookup_dcookie 18
0056 #define __NR_eventfd2 19
0057 #define __NR_epoll_create1 20
0058 #define __NR_epoll_ctl 21
0059 #define __NR_epoll_pwait 22
0060 #define __NR_dup 23
0061 #define __NR_dup3 24
0062 #define __NR3264_fcntl 25
0063 #define __NR_inotify_init1 26
0064 #define __NR_inotify_add_watch 27
0065 #define __NR_inotify_rm_watch 28
0066 #define __NR_ioctl 29
0067 #define __NR_ioprio_set 30
0068 #define __NR_ioprio_get 31
0069 #define __NR_flock 32
0070 #define __NR_mknodat 33
0071 #define __NR_mkdirat 34
0072 #define __NR_unlinkat 35
0073 #define __NR_symlinkat 36
0074 #define __NR_linkat 37
0075 #define __NR_renameat 38
0076 #define __NR_umount2 39
0077 #define __NR_mount 40
0078 #define __NR_pivot_root 41
0079 #define __NR_nfsservctl 42
0080 #define __NR3264_statfs 43
0081 #define __NR3264_fstatfs 44
0082 #define __NR3264_truncate 45
0083 #define __NR3264_ftruncate 46
0084 #define __NR_fallocate 47
0085 #define __NR_faccessat 48
0086 #define __NR_chdir 49
0087 #define __NR_fchdir 50
0088 #define __NR_chroot 51
0089 #define __NR_fchmod 52
0090 #define __NR_fchmodat 53
0091 #define __NR_fchownat 54
0092 #define __NR_fchown 55
0093 #define __NR_openat 56
0094 #define __NR_close 57
0095 #define __NR_vhangup 58
0096 #define __NR_pipe2 59
0097 #define __NR_quotactl 60
0098 #define __NR_getdents64 61
0099 #define __NR3264_lseek 62
0100 #define __NR_read 63
0101 #define __NR_write 64
0102 #define __NR_readv 65
0103 #define __NR_writev 66
0104 #define __NR_pread64 67
0105 #define __NR_pwrite64 68
0106 #define __NR_preadv 69
0107 #define __NR_pwritev 70
0108 #define __NR3264_sendfile 71
0109 #define __NR_pselect6 72
0110 #define __NR_ppoll 73
0111 #define __NR_signalfd4 74
0112 #define __NR_vmsplice 75
0113 #define __NR_splice 76
0114 #define __NR_tee 77
0115 #define __NR_readlinkat 78
0116 #define __NR3264_fstatat 79
0117 #define __NR3264_fstat 80
0118 #define __NR_sync 81
0119 #define __NR_fsync 82
0120 #define __NR_fdatasync 83
0121 
0122 //#ifdef __ARCH_WANT_SYNC_FILE_RANGE2
0123 //#define __NR_sync_file_range2 84
0124 //#else
0125 #define __NR_sync_file_range 84
0126 //#endif
0127 
0128 #define __NR_timerfd_create 85
0129 #define __NR_timerfd_settime 86
0130 #define __NR_timerfd_gettime 87
0131 #define __NR_utimensat 88
0132 #define __NR_acct 89
0133 #define __NR_capget 90
0134 #define __NR_capset 91
0135 #define __NR_personality 92
0136 #define __NR_exit 93
0137 #define __NR_exit_group 94
0138 #define __NR_waitid 95
0139 #define __NR_set_tid_address 96
0140 #define __NR_unshare 97
0141 #define __NR_futex 98
0142 #define __NR_set_robust_list 99
0143 #define __NR_get_robust_list 100
0144 #define __NR_nanosleep 101
0145 #define __NR_getitimer 102
0146 #define __NR_setitimer 103
0147 #define __NR_kexec_load 104
0148 #define __NR_init_module 105
0149 #define __NR_delete_module 106
0150 #define __NR_timer_create 107
0151 #define __NR_timer_gettime 108
0152 #define __NR_timer_getoverrun 109
0153 #define __NR_timer_settime 110
0154 #define __NR_timer_delete 111
0155 #define __NR_clock_settime 112
0156 #define __NR_clock_gettime 113
0157 #define __NR_clock_getres 114
0158 #define __NR_clock_nanosleep 115
0159 #define __NR_syslog 116
0160 #define __NR_ptrace 117
0161 #define __NR_sched_setparam 118
0162 #define __NR_sched_setscheduler 119
0163 #define __NR_sched_getscheduler 120
0164 #define __NR_sched_getparam 121
0165 #define __NR_sched_setaffinity 122
0166 #define __NR_sched_getaffinity 123
0167 #define __NR_sched_yield 124
0168 #define __NR_sched_get_priority_max 125
0169 #define __NR_sched_get_priority_min 126
0170 #define __NR_sched_rr_get_interval 127
0171 #define __NR_restart_syscall 128
0172 #define __NR_kill 129
0173 #define __NR_tkill 130
0174 #define __NR_tgkill 131
0175 #define __NR_sigaltstack 132
0176 #define __NR_rt_sigsuspend 133
0177 #define __NR_rt_sigaction 134
0178 #define __NR_rt_sigprocmask 135
0179 #define __NR_rt_sigpending 136
0180 #define __NR_rt_sigtimedwait 137
0181 #define __NR_rt_sigqueueinfo 138
0182 #define __NR_rt_sigreturn 139
0183 #define __NR_setpriority 140
0184 #define __NR_getpriority 141
0185 #define __NR_reboot 142
0186 #define __NR_setregid 143
0187 #define __NR_setgid 144
0188 #define __NR_setreuid 145
0189 #define __NR_setuid 146
0190 #define __NR_setresuid 147
0191 #define __NR_getresuid 148
0192 #define __NR_setresgid 149
0193 #define __NR_getresgid 150
0194 #define __NR_setfsuid 151
0195 #define __NR_setfsgid 152
0196 #define __NR_times 153
0197 #define __NR_setpgid 154
0198 #define __NR_getpgid 155
0199 #define __NR_getsid 156
0200 #define __NR_setsid 157
0201 #define __NR_getgroups 158
0202 #define __NR_setgroups 159
0203 #define __NR_uname 160
0204 #define __NR_sethostname 161
0205 #define __NR_setdomainname 162
0206 #define __NR_getrlimit 163
0207 #define __NR_setrlimit 164
0208 #define __NR_getrusage 165
0209 #define __NR_umask 166
0210 #define __NR_prctl 167
0211 #define __NR_getcpu 168
0212 #define __NR_gettimeofday 169
0213 #define __NR_settimeofday 170
0214 #define __NR_adjtimex 171
0215 #define __NR_getpid 172
0216 #define __NR_getppid 173
0217 #define __NR_getuid 174
0218 #define __NR_geteuid 175
0219 #define __NR_getgid 176
0220 #define __NR_getegid 177
0221 #define __NR_gettid 178
0222 #define __NR_sysinfo 179
0223 #define __NR_mq_open 180
0224 #define __NR_mq_unlink 181
0225 #define __NR_mq_timedsend 182
0226 #define __NR_mq_timedreceive 183
0227 #define __NR_mq_notify 184
0228 #define __NR_mq_getsetattr 185
0229 #define __NR_msgget 186
0230 #define __NR_msgctl 187
0231 #define __NR_msgrcv 188
0232 #define __NR_msgsnd 189
0233 #define __NR_semget 190
0234 #define __NR_semctl 191
0235 #define __NR_semtimedop 192
0236 #define __NR_semop 193
0237 #define __NR_shmget 194
0238 #define __NR_shmctl 195
0239 #define __NR_shmat 196
0240 #define __NR_shmdt 197
0241 #define __NR_socket 198
0242 #define __NR_socketpair 199
0243 #define __NR_bind 200
0244 #define __NR_listen 201
0245 #define __NR_accept 202
0246 #define __NR_connect 203
0247 #define __NR_getsockname 204
0248 #define __NR_getpeername 205
0249 #define __NR_sendto 206
0250 #define __NR_recvfrom 207
0251 #define __NR_setsockopt 208
0252 #define __NR_getsockopt 209
0253 #define __NR_shutdown 210
0254 #define __NR_sendmsg 211
0255 #define __NR_recvmsg 212
0256 #define __NR_readahead 213
0257 #define __NR_brk 214
0258 #define __NR_munmap 215
0259 #define __NR_mremap 216
0260 #define __NR_add_key 217
0261 #define __NR_request_key 218
0262 #define __NR_keyctl 219
0263 #define __NR_clone 220
0264 #define __NR_execve 221
0265 #define __NR3264_mmap 222
0266 #define __NR3264_fadvise64 223
0267 #define __NR_swapon 224
0268 #define __NR_swapoff 225
0269 #define __NR_mprotect 226
0270 #define __NR_msync 227
0271 #define __NR_mlock 228
0272 #define __NR_munlock 229
0273 #define __NR_mlockall 230
0274 #define __NR_munlockall 231
0275 #define __NR_mincore 232
0276 #define __NR_madvise 233
0277 #define __NR_remap_file_pages 234
0278 #define __NR_mbind 235
0279 #define __NR_get_mempolicy 236
0280 #define __NR_set_mempolicy 237
0281 #define __NR_migrate_pages 238
0282 #define __NR_move_pages 239
0283 #define __NR_rt_tgsigqueueinfo 240
0284 #define __NR_perf_event_open 241
0285 #define __NR_accept4 242
0286 #define __NR_recvmmsg 243
0287 
0288 ///*
0289 // * Architectures may provide up to 16 syscalls of their own
0290 // * starting with this value.
0291 // */
0292 //#define __NR_arch_specific_syscall 244
0293 
0294 #define __NR_wait4 260
0295 #define __NR_prlimit64 261
0296 #define __NR_fanotify_init 262
0297 #define __NR_fanotify_mark 263
0298 #define __NR_name_to_handle_at         264
0299 #define __NR_open_by_handle_at         265
0300 #define __NR_clock_adjtime 266
0301 #define __NR_syncfs 267
0302 #define __NR_setns 268
0303 #define __NR_sendmmsg 269
0304 #define __NR_process_vm_readv 270
0305 #define __NR_process_vm_writev 271
0306 #define __NR_kcmp 272
0307 #define __NR_finit_module 273
0308 #define __NR_sched_setattr 274
0309 #define __NR_sched_getattr 275
0310 #define __NR_renameat2 276
0311 #define __NR_seccomp 277
0312 #define __NR_getrandom 278
0313 #define __NR_memfd_create 279
0314 #define __NR_bpf 280
0315 #define __NR_execveat 281
0316 #define __NR_userfaultfd 282
0317 #define __NR_membarrier 283
0318 #define __NR_mlock2 284
0319 #define __NR_copy_file_range 285
0320 #define __NR_preadv2 286
0321 #define __NR_pwritev2 287
0322 #define __NR_pkey_mprotect 288
0323 #define __NR_pkey_alloc 289
0324 #define __NR_pkey_free 290
0325 #define __NR_statx 291
0326 #define __NR_io_pgetevents 291
0327 #define __NR_rseq 293
0328 
0329 #undef __NR_syscalls
0330 #define __NR_syscalls 294
0331 
0332 ///*
0333 // * All syscalls below here should go away really,
0334 // * these are provided for both review and as a porting
0335 // * help for the C library version.
0336 //*
0337 // * Last chance: are any of these important enough to
0338 // * enable by default?
0339 // */
0340 //#ifdef __ARCH_WANT_SYSCALL_NO_AT
0341 //ZZZZ#define __NR_open 1024
0342 //#define __NR_link 1025
0343 //__SYSCALL(__NR_link, sys_link)
0344 //#define __NR_unlink 1026
0345 //#define __NR_mknod 1027
0346 //#define __NR_chmod 1028
0347 //__SYSCALL(__NR_chmod, sys_chmod)
0348 //#define __NR_chown 1029
0349 //__SYSCALL(__NR_chown, sys_chown)
0350 //#define __NR_mkdir 1030
0351 //__SYSCALL(__NR_mkdir, sys_mkdir)
0352 //#define __NR_rmdir 1031
0353 //__SYSCALL(__NR_rmdir, sys_rmdir)
0354 //#define __NR_lchown 1032
0355 //__SYSCALL(__NR_lchown, sys_lchown)
0356 //#define __NR_access 1033
0357 //#define __NR_rename 1034
0358 //#define __NR_readlink 1035
0359 //#define __NR_symlink 1036
0360 //__SYSCALL(__NR_symlink, sys_symlink)
0361 //#define __NR_utimes 1037
0362 //__SYSCALL(__NR_utimes, sys_utimes)
0363 //#define __NR3264_stat 1038
0364 //__SC_3264(__NR3264_stat, sys_stat64, sys_newstat)
0365 //#define __NR3264_lstat 1039
0366 //__SC_3264(__NR3264_lstat, sys_lstat64, sys_newlstat)
0367 //
0368 //#undef __NR_syscalls
0369 //#define __NR_syscalls (__NR3264_lstat+1)
0370 //#endif /* __ARCH_WANT_SYSCALL_NO_AT */
0371 //
0372 //#ifdef __ARCH_WANT_SYSCALL_NO_FLAGS
0373 //#define __NR_pipe 1040
0374 //#define __NR_dup2 1041
0375 //#define __NR_epoll_create 1042
0376 //__SYSCALL(__NR_epoll_create, sys_epoll_create)
0377 //#define __NR_inotify_init 1043
0378 //__SYSCALL(__NR_inotify_init, sys_inotify_init)
0379 //#define __NR_eventfd 1044
0380 //__SYSCALL(__NR_eventfd, sys_eventfd)
0381 //#define __NR_signalfd 1045
0382 //__SYSCALL(__NR_signalfd, sys_signalfd)
0383 //
0384 //#undef __NR_syscalls
0385 //#define __NR_syscalls (__NR_signalfd+1)
0386 //#endif /* __ARCH_WANT_SYSCALL_NO_FLAGS */
0387 //
0388 /* #if (__BITS_PER_LONG == 32 || defined(__SYSCALL_COMPAT)) &&   \
0389        defined(__ARCH_WANT_SYSCALL_OFF_T)
0390 */
0391 //#define __NR_sendfile 1046
0392 //__SYSCALL(__NR_sendfile, sys_sendfile)
0393 //#define __NR_ftruncate 1047
0394 //__SYSCALL(__NR_ftruncate, sys_ftruncate)
0395 //#define __NR_truncate 1048
0396 //__SYSCALL(__NR_truncate, sys_truncate)
0397 //#define __NR_stat 1049
0398 //#define __NR_lstat 1050
0399 //__SYSCALL(__NR_lstat, sys_newlstat)
0400 //ZZ#define __NR_fstat 1051
0401 //#define __NR_fcntl 1052
0402 //#define __NR_fadvise64 1053
0403 //#define __ARCH_WANT_SYS_FADVISE64
0404 //__SYSCALL(__NR_fadvise64, sys_fadvise64)
0405 //#define __NR_newfstatat 1054
0406 //#define __ARCH_WANT_SYS_NEWFSTATAT
0407 //__SYSCALL(__NR_newfstatat, sys_newfstatat)
0408 //#define __NR_fstatfs 1055
0409 //__SYSCALL(__NR_fstatfs, sys_fstatfs)
0410 //#define __NR_statfs 1056
0411 //__SYSCALL(__NR_statfs, sys_statfs)
0412 //#define __NR_lseek 1057
0413 //#define __NR_mmap 1058
0414 //
0415 //#undef __NR_syscalls
0416 //#define __NR_syscalls (__NR_mmap+1)
0417 //#endif /* 32 bit off_t syscalls */
0418 //
0419 //#ifdef __ARCH_WANT_SYSCALL_DEPRECATED
0420 //#define __NR_alarm 1059
0421 //#define __ARCH_WANT_SYS_ALARM
0422 //__SYSCALL(__NR_alarm, sys_alarm)
0423 //#define __NR_getpgrp 1060
0424 //#define __ARCH_WANT_SYS_GETPGRP
0425 //__SYSCALL(__NR_getpgrp, sys_getpgrp)
0426 //#define __NR_pause 1061
0427 //#define __ARCH_WANT_SYS_PAUSE
0428 //__SYSCALL(__NR_pause, sys_pause)
0429 //#define __NR_time 1062
0430 //#define __ARCH_WANT_SYS_TIME
0431 //#define __ARCH_WANT_COMPAT_SYS_TIME
0432 //__SYSCALL(__NR_time, sys_time)
0433 //#define __NR_utime 1063
0434 //#define __ARCH_WANT_SYS_UTIME
0435 //__SYSCALL(__NR_utime, sys_utime)
0436 //
0437 //#define __NR_creat 1064
0438 //__SYSCALL(__NR_creat, sys_creat)
0439 //#define __NR_getdents 1065
0440 //#define __NR_futimesat 1066
0441 //__SYSCALL(__NR_futimesat, sys_futimesat)
0442 //#define __NR_select 1067
0443 //#define __ARCH_WANT_SYS_SELECT
0444 //__SYSCALL(__NR_select, sys_select)
0445 //#define __NR_poll 1068
0446 //#define __NR_epoll_wait 1069
0447 //__SYSCALL(__NR_epoll_wait, sys_epoll_wait)
0448 //#define __NR_ustat 1070
0449 //__SYSCALL(__NR_ustat, sys_ustat)
0450 //#define __NR_vfork 1071
0451 //__SYSCALL(__NR_vfork, sys_vfork)
0452 //#define __NR_oldwait4 1072
0453 //__SYSCALL(__NR_oldwait4, sys_wait4)
0454 //#define __NR_recv 1073
0455 //__SYSCALL(__NR_recv, sys_recv)
0456 //#define __NR_send 1074
0457 //__SYSCALL(__NR_send, sys_send)
0458 //#define __NR_bdflush 1075
0459 //__SYSCALL(__NR_bdflush, sys_bdflush)
0460 //#define __NR_umount 1076
0461 //__SYSCALL(__NR_umount, sys_oldumount)
0462 //#define __ARCH_WANT_SYS_OLDUMOUNT
0463 //#define __NR_uselib 1077
0464 //__SYSCALL(__NR_uselib, sys_uselib)
0465 //#define __NR__sysctl 1078
0466 //__SYSCALL(__NR__sysctl, sys_sysctl)
0467 //
0468 //#define __NR_fork 1079
0469 //#ifdef CONFIG_MMU
0470 //__SYSCALL(__NR_fork, sys_fork)
0471 //#else
0472 //__SYSCALL(__NR_fork, sys_ni_syscall)
0473 //#endif /* CONFIG_MMU */
0474 //
0475 //#undef __NR_syscalls
0476 //#define __NR_syscalls (__NR_fork+1)
0477 //
0478 //#endif /* __ARCH_WANT_SYSCALL_DEPRECATED */
0479 //
0480 ///*
0481 // * 32 bit systems traditionally used different
0482 // * syscalls for off_t and loff_t arguments, while
0483 // * 64 bit systems only need the off_t version.
0484 // * For new 32 bit platforms, there is no need to
0485 // * implement the old 32 bit off_t syscalls, so
0486 // * they take different names.
0487 // * Here we map the numbers so that both versions
0488 // * use the same syscall table layout.
0489 // */
0490 //#if __BITS_PER_LONG == 64 && !defined(__SYSCALL_COMPAT)
0491 #define __NR_fcntl __NR3264_fcntl
0492 #define __NR_statfs __NR3264_statfs
0493 #define __NR_fstatfs __NR3264_fstatfs
0494 #define __NR_truncate __NR3264_truncate
0495 #define __NR_ftruncate __NR3264_ftruncate
0496 #define __NR_lseek __NR3264_lseek
0497 #define __NR_sendfile __NR3264_sendfile
0498 #define __NR_newfstatat __NR3264_fstatat
0499 #define __NR_fstat __NR3264_fstat
0500 #define __NR_mmap __NR3264_mmap
0501 #define __NR_fadvise64 __NR3264_fadvise64
0502 //#ifdef __NR3264_stat
0503 //#define __NR_stat __NR3264_stat
0504 //#define __NR_lstat __NR3264_lstat
0505 //#endif
0506 //#else
0507 //#define __NR_fcntl64 __NR3264_fcntl
0508 //#define __NR_statfs64 __NR3264_statfs
0509 //#define __NR_fstatfs64 __NR3264_fstatfs
0510 //#define __NR_truncate64 __NR3264_truncate
0511 //#define __NR_ftruncate64 __NR3264_ftruncate
0512 //#define __NR_llseek __NR3264_lseek
0513 //#define __NR_sendfile64 __NR3264_sendfile
0514 //#define __NR_fstatat64 __NR3264_fstatat
0515 //#define __NR_fstat64 __NR3264_fstat
0516 //#define __NR_mmap2 __NR3264_mmap
0517 //#define __NR_fadvise64_64 __NR3264_fadvise64
0518 //#ifdef __NR3264_stat
0519 //#define __NR_stat64 __NR3264_stat
0520 //#define __NR_lstat64 __NR3264_lstat
0521 //#endif
0522 //#endif
0523 
0524 #endif /* __VKI_SCNUMS_ARM64_LINUX_H */
0525 
0526 /*--------------------------------------------------------------------*/
0527 /*--- end                                 vki-scnums-arm64-linux.h ---*/
0528 /*--------------------------------------------------------------------*/