Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux

Merge branch 'sparc-syscall-gen'

Firoz Khan says:

====================
sparc: system call table generation support

The purpose of this patch series is, we can easily
add/modify/delete system call table support by cha-
nging entry in syscall.tbl file instead of manually
changing many files. The other goal is to unify the
system call table generation support implementation
across all the architectures.

The system call tables are in different format in
all architecture. It will be difficult to manually
add, modify or delete the system calls in the resp-
ective files manually. To make it easy by keeping a
script and which'll generate uapi header file and
syscall table file.

syscall.tbl contains the list of available system
calls along with system call number and correspond-
ing entry point. Add a new system call in this arch-
itecture will be possible by adding new entry in
the syscall.tbl file.

Adding a new table entry consisting of:
- System call number.
- ABI.
- System call name.
- Entry point name.
- Compat entry name, if required.

ARM, s390 and x86 architecuture does exist the sim-
ilar support. I leverage their implementation to
come up with a generic solution.

I have done the same support for work for alpha,
ia64, m68k, microblaze, mips, parisc, powerpc, sh
and xtensa. Below mentioned git repository contains
more details about the workflow.

https://github.com/frzkhn/system_call_table_generator/

Finally, this is the ground work to solve the Y2038
issue. We need to add two dozen of system calls to
solve Y2038 issue. So this patch series will help to
add new system calls easily by adding new entry in the
syscall.tbl.

Changes since v2:
- changed from generic-y to generated-y in Kbuild.
- added io_pgetevents entry in the syscall.tbl.
- updated the compat system call table.

Changes since v1:
- optimized/updated the syscall table generation
scripts.
- fixed all mixed indentation issues in syscall.tbl.
- added "comments" in syscall.tbl.
====================

Signed-off-by: David S. Miller <davem@davemloft.net>

+572 -655
+3
arch/sparc/Makefile
··· 81 81 archclean: 82 82 $(Q)$(MAKE) $(clean)=$(boot) 83 83 84 + archheaders: 85 + $(Q)$(MAKE) $(build)=arch/sparc/kernel/syscalls all 86 + 84 87 PHONY += vdso_install 85 88 vdso_install: 86 89 $(Q)$(MAKE) $(build)=arch/sparc/vdso $@
+3 -1
arch/sparc/include/asm/Kbuild
··· 1 1 # User exported sparc header files 2 2 3 - 3 + generated-y += syscall_table_32.h 4 + generated-y += syscall_table_64.h 5 + generated-y += syscall_table_c32.h 4 6 generic-y += div64.h 5 7 generic-y += emergency-restart.h 6 8 generic-y += exec.h
+18
arch/sparc/include/asm/unistd.h
··· 17 17 18 18 #include <uapi/asm/unistd.h> 19 19 20 + #define NR_syscalls __NR_syscalls 21 + 20 22 #ifdef __32bit_syscall_numbers__ 21 23 #else 22 24 #define __NR_time 231 /* Linux sparc32 */ ··· 47 45 #define __ARCH_WANT_SYS_UTIME32 48 46 #define __ARCH_WANT_COMPAT_SYS_SENDFILE 49 47 #endif 48 + 49 + #ifdef __32bit_syscall_numbers__ 50 + /* Sparc 32-bit only has the "setresuid32", "getresuid32" variants, 51 + * it never had the plain ones and there is no value to adding those 52 + * old versions into the syscall table. 53 + */ 54 + #define __IGNORE_setresuid 55 + #define __IGNORE_getresuid 56 + #define __IGNORE_setresgid 57 + #define __IGNORE_getresgid 58 + #endif 59 + 60 + /* Sparc doesn't have protection keys. */ 61 + #define __IGNORE_pkey_mprotect 62 + #define __IGNORE_pkey_alloc 63 + #define __IGNORE_pkey_free 50 64 51 65 #endif /* _SPARC_UNISTD_H */
+2
arch/sparc/include/uapi/asm/Kbuild
··· 1 1 # UAPI Header export list 2 2 include include/uapi/asm-generic/Kbuild.asm 3 3 4 + generated-y += unistd_32.h 5 + generated-y += unistd_64.h 4 6 generic-y += bpf_perf_event.h 5 7 generic-y += types.h
+3 -423
arch/sparc/include/uapi/asm/unistd.h
··· 21 21 #endif 22 22 #endif 23 23 24 - #define __NR_restart_syscall 0 /* Linux Specific */ 25 - #define __NR_exit 1 /* Common */ 26 - #define __NR_fork 2 /* Common */ 27 - #define __NR_read 3 /* Common */ 28 - #define __NR_write 4 /* Common */ 29 - #define __NR_open 5 /* Common */ 30 - #define __NR_close 6 /* Common */ 31 - #define __NR_wait4 7 /* Common */ 32 - #define __NR_creat 8 /* Common */ 33 - #define __NR_link 9 /* Common */ 34 - #define __NR_unlink 10 /* Common */ 35 - #define __NR_execv 11 /* SunOS Specific */ 36 - #define __NR_chdir 12 /* Common */ 37 - #define __NR_chown 13 /* Common */ 38 - #define __NR_mknod 14 /* Common */ 39 - #define __NR_chmod 15 /* Common */ 40 - #define __NR_lchown 16 /* Common */ 41 - #define __NR_brk 17 /* Common */ 42 - #define __NR_perfctr 18 /* Performance counter operations */ 43 - #define __NR_lseek 19 /* Common */ 44 - #define __NR_getpid 20 /* Common */ 45 - #define __NR_capget 21 /* Linux Specific */ 46 - #define __NR_capset 22 /* Linux Specific */ 47 - #define __NR_setuid 23 /* Implemented via setreuid in SunOS */ 48 - #define __NR_getuid 24 /* Common */ 49 - #define __NR_vmsplice 25 /* ENOSYS under SunOS */ 50 - #define __NR_ptrace 26 /* Common */ 51 - #define __NR_alarm 27 /* Implemented via setitimer in SunOS */ 52 - #define __NR_sigaltstack 28 /* Common */ 53 - #define __NR_pause 29 /* Is sigblock(0)->sigpause() in SunOS */ 54 - #define __NR_utime 30 /* Implemented via utimes() under SunOS */ 55 - #ifdef __32bit_syscall_numbers__ 56 - #define __NR_lchown32 31 /* Linux sparc32 specific */ 57 - #define __NR_fchown32 32 /* Linux sparc32 specific */ 58 - #endif 59 - #define __NR_access 33 /* Common */ 60 - #define __NR_nice 34 /* Implemented via get/setpriority() in SunOS */ 61 - #ifdef __32bit_syscall_numbers__ 62 - #define __NR_chown32 35 /* Linux sparc32 specific */ 63 - #endif 64 - #define __NR_sync 36 /* Common */ 65 - #define __NR_kill 37 /* Common */ 66 - #define __NR_stat 38 /* Common */ 67 - #define __NR_sendfile 39 /* Linux Specific */ 68 - #define __NR_lstat 40 /* Common */ 69 - #define __NR_dup 41 /* Common */ 70 - #define __NR_pipe 42 /* Common */ 71 - #define __NR_times 43 /* Implemented via getrusage() in SunOS */ 72 - #ifdef __32bit_syscall_numbers__ 73 - #define __NR_getuid32 44 /* Linux sparc32 specific */ 74 - #endif 75 - #define __NR_umount2 45 /* Linux Specific */ 76 - #define __NR_setgid 46 /* Implemented via setregid() in SunOS */ 77 - #define __NR_getgid 47 /* Common */ 78 - #define __NR_signal 48 /* Implemented via sigvec() in SunOS */ 79 - #define __NR_geteuid 49 /* SunOS calls getuid() */ 80 - #define __NR_getegid 50 /* SunOS calls getgid() */ 81 - #define __NR_acct 51 /* Common */ 82 - #ifdef __32bit_syscall_numbers__ 83 - #define __NR_getgid32 53 /* Linux sparc32 specific */ 24 + #ifdef __arch64__ 25 + #include <asm/unistd_64.h> 84 26 #else 85 - #define __NR_memory_ordering 52 /* Linux Specific */ 27 + #include <asm/unistd_32.h> 86 28 #endif 87 - #define __NR_ioctl 54 /* Common */ 88 - #define __NR_reboot 55 /* Common */ 89 - #ifdef __32bit_syscall_numbers__ 90 - #define __NR_mmap2 56 /* Linux sparc32 Specific */ 91 - #endif 92 - #define __NR_symlink 57 /* Common */ 93 - #define __NR_readlink 58 /* Common */ 94 - #define __NR_execve 59 /* Common */ 95 - #define __NR_umask 60 /* Common */ 96 - #define __NR_chroot 61 /* Common */ 97 - #define __NR_fstat 62 /* Common */ 98 - #define __NR_fstat64 63 /* Linux Specific */ 99 - #define __NR_getpagesize 64 /* Common */ 100 - #define __NR_msync 65 /* Common in newer 1.3.x revs... */ 101 - #define __NR_vfork 66 /* Common */ 102 - #define __NR_pread64 67 /* Linux Specific */ 103 - #define __NR_pwrite64 68 /* Linux Specific */ 104 - #ifdef __32bit_syscall_numbers__ 105 - #define __NR_geteuid32 69 /* Linux sparc32, sbrk under SunOS */ 106 - #define __NR_getegid32 70 /* Linux sparc32, sstk under SunOS */ 107 - #endif 108 - #define __NR_mmap 71 /* Common */ 109 - #ifdef __32bit_syscall_numbers__ 110 - #define __NR_setreuid32 72 /* Linux sparc32, vadvise under SunOS */ 111 - #endif 112 - #define __NR_munmap 73 /* Common */ 113 - #define __NR_mprotect 74 /* Common */ 114 - #define __NR_madvise 75 /* Common */ 115 - #define __NR_vhangup 76 /* Common */ 116 - #ifdef __32bit_syscall_numbers__ 117 - #define __NR_truncate64 77 /* Linux sparc32 Specific */ 118 - #endif 119 - #define __NR_mincore 78 /* Common */ 120 - #define __NR_getgroups 79 /* Common */ 121 - #define __NR_setgroups 80 /* Common */ 122 - #define __NR_getpgrp 81 /* Common */ 123 - #ifdef __32bit_syscall_numbers__ 124 - #define __NR_setgroups32 82 /* Linux sparc32, setpgrp under SunOS */ 125 - #endif 126 - #define __NR_setitimer 83 /* Common */ 127 - #ifdef __32bit_syscall_numbers__ 128 - #define __NR_ftruncate64 84 /* Linux sparc32 Specific */ 129 - #endif 130 - #define __NR_swapon 85 /* Common */ 131 - #define __NR_getitimer 86 /* Common */ 132 - #ifdef __32bit_syscall_numbers__ 133 - #define __NR_setuid32 87 /* Linux sparc32, gethostname under SunOS */ 134 - #endif 135 - #define __NR_sethostname 88 /* Common */ 136 - #ifdef __32bit_syscall_numbers__ 137 - #define __NR_setgid32 89 /* Linux sparc32, getdtablesize under SunOS */ 138 - #endif 139 - #define __NR_dup2 90 /* Common */ 140 - #ifdef __32bit_syscall_numbers__ 141 - #define __NR_setfsuid32 91 /* Linux sparc32, getdopt under SunOS */ 142 - #endif 143 - #define __NR_fcntl 92 /* Common */ 144 - #define __NR_select 93 /* Common */ 145 - #ifdef __32bit_syscall_numbers__ 146 - #define __NR_setfsgid32 94 /* Linux sparc32, setdopt under SunOS */ 147 - #endif 148 - #define __NR_fsync 95 /* Common */ 149 - #define __NR_setpriority 96 /* Common */ 150 - #define __NR_socket 97 /* Common */ 151 - #define __NR_connect 98 /* Common */ 152 - #define __NR_accept 99 /* Common */ 153 - #define __NR_getpriority 100 /* Common */ 154 - #define __NR_rt_sigreturn 101 /* Linux Specific */ 155 - #define __NR_rt_sigaction 102 /* Linux Specific */ 156 - #define __NR_rt_sigprocmask 103 /* Linux Specific */ 157 - #define __NR_rt_sigpending 104 /* Linux Specific */ 158 - #define __NR_rt_sigtimedwait 105 /* Linux Specific */ 159 - #define __NR_rt_sigqueueinfo 106 /* Linux Specific */ 160 - #define __NR_rt_sigsuspend 107 /* Linux Specific */ 161 - #ifdef __32bit_syscall_numbers__ 162 - #define __NR_setresuid32 108 /* Linux Specific, sigvec under SunOS */ 163 - #define __NR_getresuid32 109 /* Linux Specific, sigblock under SunOS */ 164 - #define __NR_setresgid32 110 /* Linux Specific, sigsetmask under SunOS */ 165 - #define __NR_getresgid32 111 /* Linux Specific, sigpause under SunOS */ 166 - #define __NR_setregid32 112 /* Linux sparc32, sigstack under SunOS */ 167 - #else 168 - #define __NR_setresuid 108 /* Linux Specific, sigvec under SunOS */ 169 - #define __NR_getresuid 109 /* Linux Specific, sigblock under SunOS */ 170 - #define __NR_setresgid 110 /* Linux Specific, sigsetmask under SunOS */ 171 - #define __NR_getresgid 111 /* Linux Specific, sigpause under SunOS */ 172 - #endif 173 - #define __NR_recvmsg 113 /* Common */ 174 - #define __NR_sendmsg 114 /* Common */ 175 - #ifdef __32bit_syscall_numbers__ 176 - #define __NR_getgroups32 115 /* Linux sparc32, vtrace under SunOS */ 177 - #endif 178 - #define __NR_gettimeofday 116 /* Common */ 179 - #define __NR_getrusage 117 /* Common */ 180 - #define __NR_getsockopt 118 /* Common */ 181 - #define __NR_getcwd 119 /* Linux Specific */ 182 - #define __NR_readv 120 /* Common */ 183 - #define __NR_writev 121 /* Common */ 184 - #define __NR_settimeofday 122 /* Common */ 185 - #define __NR_fchown 123 /* Common */ 186 - #define __NR_fchmod 124 /* Common */ 187 - #define __NR_recvfrom 125 /* Common */ 188 - #define __NR_setreuid 126 /* Common */ 189 - #define __NR_setregid 127 /* Common */ 190 - #define __NR_rename 128 /* Common */ 191 - #define __NR_truncate 129 /* Common */ 192 - #define __NR_ftruncate 130 /* Common */ 193 - #define __NR_flock 131 /* Common */ 194 - #define __NR_lstat64 132 /* Linux Specific */ 195 - #define __NR_sendto 133 /* Common */ 196 - #define __NR_shutdown 134 /* Common */ 197 - #define __NR_socketpair 135 /* Common */ 198 - #define __NR_mkdir 136 /* Common */ 199 - #define __NR_rmdir 137 /* Common */ 200 - #define __NR_utimes 138 /* SunOS Specific */ 201 - #define __NR_stat64 139 /* Linux Specific */ 202 - #define __NR_sendfile64 140 /* adjtime under SunOS */ 203 - #define __NR_getpeername 141 /* Common */ 204 - #define __NR_futex 142 /* gethostid under SunOS */ 205 - #define __NR_gettid 143 /* ENOSYS under SunOS */ 206 - #define __NR_getrlimit 144 /* Common */ 207 - #define __NR_setrlimit 145 /* Common */ 208 - #define __NR_pivot_root 146 /* Linux Specific, killpg under SunOS */ 209 - #define __NR_prctl 147 /* ENOSYS under SunOS */ 210 - #define __NR_pciconfig_read 148 /* ENOSYS under SunOS */ 211 - #define __NR_pciconfig_write 149 /* ENOSYS under SunOS */ 212 - #define __NR_getsockname 150 /* Common */ 213 - #define __NR_inotify_init 151 /* Linux specific */ 214 - #define __NR_inotify_add_watch 152 /* Linux specific */ 215 - #define __NR_poll 153 /* Common */ 216 - #define __NR_getdents64 154 /* Linux specific */ 217 - #ifdef __32bit_syscall_numbers__ 218 - #define __NR_fcntl64 155 /* Linux sparc32 Specific */ 219 - #endif 220 - #define __NR_inotify_rm_watch 156 /* Linux specific */ 221 - #define __NR_statfs 157 /* Common */ 222 - #define __NR_fstatfs 158 /* Common */ 223 - #define __NR_umount 159 /* Common */ 224 - #define __NR_sched_set_affinity 160 /* Linux specific, async_daemon under SunOS */ 225 - #define __NR_sched_get_affinity 161 /* Linux specific, getfh under SunOS */ 226 - #define __NR_getdomainname 162 /* SunOS Specific */ 227 - #define __NR_setdomainname 163 /* Common */ 228 - #ifndef __32bit_syscall_numbers__ 229 - #define __NR_utrap_install 164 /* SYSV ABI/v9 required */ 230 - #endif 231 - #define __NR_quotactl 165 /* Common */ 232 - #define __NR_set_tid_address 166 /* Linux specific, exportfs under SunOS */ 233 - #define __NR_mount 167 /* Common */ 234 - #define __NR_ustat 168 /* Common */ 235 - #define __NR_setxattr 169 /* SunOS: semsys */ 236 - #define __NR_lsetxattr 170 /* SunOS: msgsys */ 237 - #define __NR_fsetxattr 171 /* SunOS: shmsys */ 238 - #define __NR_getxattr 172 /* SunOS: auditsys */ 239 - #define __NR_lgetxattr 173 /* SunOS: rfssys */ 240 - #define __NR_getdents 174 /* Common */ 241 - #define __NR_setsid 175 /* Common */ 242 - #define __NR_fchdir 176 /* Common */ 243 - #define __NR_fgetxattr 177 /* SunOS: fchroot */ 244 - #define __NR_listxattr 178 /* SunOS: vpixsys */ 245 - #define __NR_llistxattr 179 /* SunOS: aioread */ 246 - #define __NR_flistxattr 180 /* SunOS: aiowrite */ 247 - #define __NR_removexattr 181 /* SunOS: aiowait */ 248 - #define __NR_lremovexattr 182 /* SunOS: aiocancel */ 249 - #define __NR_sigpending 183 /* Common */ 250 - #define __NR_query_module 184 /* Linux Specific */ 251 - #define __NR_setpgid 185 /* Common */ 252 - #define __NR_fremovexattr 186 /* SunOS: pathconf */ 253 - #define __NR_tkill 187 /* SunOS: fpathconf */ 254 - #define __NR_exit_group 188 /* Linux specific, sysconf undef SunOS */ 255 - #define __NR_uname 189 /* Linux Specific */ 256 - #define __NR_init_module 190 /* Linux Specific */ 257 - #define __NR_personality 191 /* Linux Specific */ 258 - #define __NR_remap_file_pages 192 /* Linux Specific */ 259 - #define __NR_epoll_create 193 /* Linux Specific */ 260 - #define __NR_epoll_ctl 194 /* Linux Specific */ 261 - #define __NR_epoll_wait 195 /* Linux Specific */ 262 - #define __NR_ioprio_set 196 /* Linux Specific */ 263 - #define __NR_getppid 197 /* Linux Specific */ 264 - #define __NR_sigaction 198 /* Linux Specific */ 265 - #define __NR_sgetmask 199 /* Linux Specific */ 266 - #define __NR_ssetmask 200 /* Linux Specific */ 267 - #define __NR_sigsuspend 201 /* Linux Specific */ 268 - #define __NR_oldlstat 202 /* Linux Specific */ 269 - #define __NR_uselib 203 /* Linux Specific */ 270 - #define __NR_readdir 204 /* Linux Specific */ 271 - #define __NR_readahead 205 /* Linux Specific */ 272 - #define __NR_socketcall 206 /* Linux Specific */ 273 - #define __NR_syslog 207 /* Linux Specific */ 274 - #define __NR_lookup_dcookie 208 /* Linux Specific */ 275 - #define __NR_fadvise64 209 /* Linux Specific */ 276 - #define __NR_fadvise64_64 210 /* Linux Specific */ 277 - #define __NR_tgkill 211 /* Linux Specific */ 278 - #define __NR_waitpid 212 /* Linux Specific */ 279 - #define __NR_swapoff 213 /* Linux Specific */ 280 - #define __NR_sysinfo 214 /* Linux Specific */ 281 - #define __NR_ipc 215 /* Linux Specific */ 282 - #define __NR_sigreturn 216 /* Linux Specific */ 283 - #define __NR_clone 217 /* Linux Specific */ 284 - #define __NR_ioprio_get 218 /* Linux Specific */ 285 - #define __NR_adjtimex 219 /* Linux Specific */ 286 - #define __NR_sigprocmask 220 /* Linux Specific */ 287 - #define __NR_create_module 221 /* Linux Specific */ 288 - #define __NR_delete_module 222 /* Linux Specific */ 289 - #define __NR_get_kernel_syms 223 /* Linux Specific */ 290 - #define __NR_getpgid 224 /* Linux Specific */ 291 - #define __NR_bdflush 225 /* Linux Specific */ 292 - #define __NR_sysfs 226 /* Linux Specific */ 293 - #define __NR_afs_syscall 227 /* Linux Specific */ 294 - #define __NR_setfsuid 228 /* Linux Specific */ 295 - #define __NR_setfsgid 229 /* Linux Specific */ 296 - #define __NR__newselect 230 /* Linux Specific */ 297 - #ifdef __32bit_syscall_numbers__ 298 - #define __NR_time 231 /* Linux Specific */ 299 - #else 300 - #endif 301 - #define __NR_splice 232 /* Linux Specific */ 302 - #define __NR_stime 233 /* Linux Specific */ 303 - #define __NR_statfs64 234 /* Linux Specific */ 304 - #define __NR_fstatfs64 235 /* Linux Specific */ 305 - #define __NR__llseek 236 /* Linux Specific */ 306 - #define __NR_mlock 237 307 - #define __NR_munlock 238 308 - #define __NR_mlockall 239 309 - #define __NR_munlockall 240 310 - #define __NR_sched_setparam 241 311 - #define __NR_sched_getparam 242 312 - #define __NR_sched_setscheduler 243 313 - #define __NR_sched_getscheduler 244 314 - #define __NR_sched_yield 245 315 - #define __NR_sched_get_priority_max 246 316 - #define __NR_sched_get_priority_min 247 317 - #define __NR_sched_rr_get_interval 248 318 - #define __NR_nanosleep 249 319 - #define __NR_mremap 250 320 - #define __NR__sysctl 251 321 - #define __NR_getsid 252 322 - #define __NR_fdatasync 253 323 - #define __NR_nfsservctl 254 324 - #define __NR_sync_file_range 255 325 - #define __NR_clock_settime 256 326 - #define __NR_clock_gettime 257 327 - #define __NR_clock_getres 258 328 - #define __NR_clock_nanosleep 259 329 - #define __NR_sched_getaffinity 260 330 - #define __NR_sched_setaffinity 261 331 - #define __NR_timer_settime 262 332 - #define __NR_timer_gettime 263 333 - #define __NR_timer_getoverrun 264 334 - #define __NR_timer_delete 265 335 - #define __NR_timer_create 266 336 - /* #define __NR_vserver 267 Reserved for VSERVER */ 337 - #define __NR_io_setup 268 338 - #define __NR_io_destroy 269 339 - #define __NR_io_submit 270 340 - #define __NR_io_cancel 271 341 - #define __NR_io_getevents 272 342 - #define __NR_mq_open 273 343 - #define __NR_mq_unlink 274 344 - #define __NR_mq_timedsend 275 345 - #define __NR_mq_timedreceive 276 346 - #define __NR_mq_notify 277 347 - #define __NR_mq_getsetattr 278 348 - #define __NR_waitid 279 349 - #define __NR_tee 280 350 - #define __NR_add_key 281 351 - #define __NR_request_key 282 352 - #define __NR_keyctl 283 353 - #define __NR_openat 284 354 - #define __NR_mkdirat 285 355 - #define __NR_mknodat 286 356 - #define __NR_fchownat 287 357 - #define __NR_futimesat 288 358 - #define __NR_fstatat64 289 359 - #define __NR_unlinkat 290 360 - #define __NR_renameat 291 361 - #define __NR_linkat 292 362 - #define __NR_symlinkat 293 363 - #define __NR_readlinkat 294 364 - #define __NR_fchmodat 295 365 - #define __NR_faccessat 296 366 - #define __NR_pselect6 297 367 - #define __NR_ppoll 298 368 - #define __NR_unshare 299 369 - #define __NR_set_robust_list 300 370 - #define __NR_get_robust_list 301 371 - #define __NR_migrate_pages 302 372 - #define __NR_mbind 303 373 - #define __NR_get_mempolicy 304 374 - #define __NR_set_mempolicy 305 375 - #define __NR_kexec_load 306 376 - #define __NR_move_pages 307 377 - #define __NR_getcpu 308 378 - #define __NR_epoll_pwait 309 379 - #define __NR_utimensat 310 380 - #define __NR_signalfd 311 381 - #define __NR_timerfd_create 312 382 - #define __NR_eventfd 313 383 - #define __NR_fallocate 314 384 - #define __NR_timerfd_settime 315 385 - #define __NR_timerfd_gettime 316 386 - #define __NR_signalfd4 317 387 - #define __NR_eventfd2 318 388 - #define __NR_epoll_create1 319 389 - #define __NR_dup3 320 390 - #define __NR_pipe2 321 391 - #define __NR_inotify_init1 322 392 - #define __NR_accept4 323 393 - #define __NR_preadv 324 394 - #define __NR_pwritev 325 395 - #define __NR_rt_tgsigqueueinfo 326 396 - #define __NR_perf_event_open 327 397 - #define __NR_recvmmsg 328 398 - #define __NR_fanotify_init 329 399 - #define __NR_fanotify_mark 330 400 - #define __NR_prlimit64 331 401 - #define __NR_name_to_handle_at 332 402 - #define __NR_open_by_handle_at 333 403 - #define __NR_clock_adjtime 334 404 - #define __NR_syncfs 335 405 - #define __NR_sendmmsg 336 406 - #define __NR_setns 337 407 - #define __NR_process_vm_readv 338 408 - #define __NR_process_vm_writev 339 409 - #define __NR_kern_features 340 410 - #define __NR_kcmp 341 411 - #define __NR_finit_module 342 412 - #define __NR_sched_setattr 343 413 - #define __NR_sched_getattr 344 414 - #define __NR_renameat2 345 415 - #define __NR_seccomp 346 416 - #define __NR_getrandom 347 417 - #define __NR_memfd_create 348 418 - #define __NR_bpf 349 419 - #define __NR_execveat 350 420 - #define __NR_membarrier 351 421 - #define __NR_userfaultfd 352 422 - #define __NR_bind 353 423 - #define __NR_listen 354 424 - #define __NR_setsockopt 355 425 - #define __NR_mlock2 356 426 - #define __NR_copy_file_range 357 427 - #define __NR_preadv2 358 428 - #define __NR_pwritev2 359 429 - #define __NR_statx 360 430 - #define __NR_io_pgetevents 361 431 - 432 - #define NR_syscalls 362 433 29 434 30 /* Bitmask values returned from kern_features system call. */ 435 31 #define KERN_FEATURE_MIXED_MODE_STACK 0x00000001 436 - 437 - #ifdef __32bit_syscall_numbers__ 438 - /* Sparc 32-bit only has the "setresuid32", "getresuid32" variants, 439 - * it never had the plain ones and there is no value to adding those 440 - * old versions into the syscall table. 441 - */ 442 - #define __IGNORE_setresuid 443 - #define __IGNORE_getresuid 444 - #define __IGNORE_setresgid 445 - #define __IGNORE_getresgid 446 - #endif 447 - 448 - /* Sparc doesn't have protection keys. */ 449 - #define __IGNORE_pkey_mprotect 450 - #define __IGNORE_pkey_alloc 451 - #define __IGNORE_pkey_free 452 32 453 33 #endif /* _UAPI_SPARC_UNISTD_H */
+55
arch/sparc/kernel/syscalls/Makefile
··· 1 + # SPDX-License-Identifier: GPL-2.0 2 + kapi := arch/$(SRCARCH)/include/generated/asm 3 + uapi := arch/$(SRCARCH)/include/generated/uapi/asm 4 + 5 + _dummy := $(shell [ -d '$(uapi)' ] || mkdir -p '$(uapi)') \ 6 + $(shell [ -d '$(kapi)' ] || mkdir -p '$(kapi)') 7 + 8 + syscall := $(srctree)/$(src)/syscall.tbl 9 + syshdr := $(srctree)/$(src)/syscallhdr.sh 10 + systbl := $(srctree)/$(src)/syscalltbl.sh 11 + 12 + quiet_cmd_syshdr = SYSHDR $@ 13 + cmd_syshdr = $(CONFIG_SHELL) '$(syshdr)' '$<' '$@' \ 14 + '$(syshdr_abis_$(basetarget))' \ 15 + '$(syshdr_pfx_$(basetarget))' \ 16 + '$(syshdr_offset_$(basetarget))' 17 + 18 + quiet_cmd_systbl = SYSTBL $@ 19 + cmd_systbl = $(CONFIG_SHELL) '$(systbl)' '$<' '$@' \ 20 + '$(systbl_abis_$(basetarget))' \ 21 + '$(systbl_abi_$(basetarget))' \ 22 + '$(systbl_offset_$(basetarget))' 23 + 24 + syshdr_abis_unistd_32 := common,32 25 + $(uapi)/unistd_32.h: $(syscall) $(syshdr) 26 + $(call if_changed,syshdr) 27 + 28 + syshdr_abis_unistd_64 := common,64 29 + $(uapi)/unistd_64.h: $(syscall) $(syshdr) 30 + $(call if_changed,syshdr) 31 + 32 + systbl_abis_syscall_table_32 := common,32 33 + $(kapi)/syscall_table_32.h: $(syscall) $(systbl) 34 + $(call if_changed,systbl) 35 + 36 + systbl_abis_syscall_table_64 := common,64 37 + $(kapi)/syscall_table_64.h: $(syscall) $(systbl) 38 + $(call if_changed,systbl) 39 + 40 + systbl_abis_syscall_table_c32 := common,32 41 + systbl_abi_syscall_table_c32 := c32 42 + $(kapi)/syscall_table_c32.h: $(syscall) $(systbl) 43 + $(call if_changed,systbl) 44 + 45 + uapisyshdr-y += unistd_32.h unistd_64.h 46 + kapisyshdr-y += syscall_table_32.h \ 47 + syscall_table_64.h \ 48 + syscall_table_c32.h 49 + 50 + targets += $(uapisyshdr-y) $(kapisyshdr-y) 51 + 52 + PHONY += all 53 + all: $(addprefix $(uapi)/,$(uapisyshdr-y)) 54 + all: $(addprefix $(kapi)/,$(kapisyshdr-y)) 55 + @:
+409
arch/sparc/kernel/syscalls/syscall.tbl
··· 1 + # SPDX-License-Identifier: GPL-2.0 WITH Linux-syscall-note 2 + # 3 + # system call numbers and entry vectors for sparc 4 + # 5 + # The format is: 6 + # <number> <abi> <name> <entry point> <compat entry point> 7 + # 8 + # The <abi> can be common, 64, or 32 for this file. 9 + # 10 + 0 common restart_syscall sys_restart_syscall 11 + 1 32 exit sys_exit sparc_exit 12 + 1 64 exit sparc_exit 13 + 2 common fork sys_fork 14 + 3 common read sys_read 15 + 4 common write sys_write 16 + 5 common open sys_open compat_sys_open 17 + 6 common close sys_close 18 + 7 common wait4 sys_wait4 compat_sys_wait4 19 + 8 common creat sys_creat 20 + 9 common link sys_link 21 + 10 common unlink sys_unlink 22 + 11 32 execv sunos_execv 23 + 11 64 execv sys_nis_syscall 24 + 12 common chdir sys_chdir 25 + 13 32 chown sys_chown16 26 + 13 64 chown sys_chown 27 + 14 common mknod sys_mknod 28 + 15 common chmod sys_chmod 29 + 16 32 lchown sys_lchown16 30 + 16 64 lchown sys_lchown 31 + 17 common brk sys_brk 32 + 18 common perfctr sys_nis_syscall 33 + 19 common lseek sys_lseek compat_sys_lseek 34 + 20 common getpid sys_getpid 35 + 21 common capget sys_capget 36 + 22 common capset sys_capset 37 + 23 32 setuid sys_setuid16 38 + 23 64 setuid sys_setuid 39 + 24 32 getuid sys_getuid16 40 + 24 64 getuid sys_getuid 41 + 25 common vmsplice sys_vmsplice compat_sys_vmsplice 42 + 26 common ptrace sys_ptrace compat_sys_ptrace 43 + 27 common alarm sys_alarm 44 + 28 common sigaltstack sys_sigaltstack compat_sys_sigaltstack 45 + 29 32 pause sys_pause 46 + 29 64 pause sys_nis_syscall 47 + 30 common utime sys_utime compat_sys_utime 48 + 31 32 lchown32 sys_lchown 49 + 32 32 fchown32 sys_fchown 50 + 33 common access sys_access 51 + 34 common nice sys_nice 52 + 35 32 chown32 sys_chown 53 + 36 common sync sys_sync 54 + 37 common kill sys_kill 55 + 38 common stat sys_newstat compat_sys_newstat 56 + 39 32 sendfile sys_sendfile compat_sys_sendfile 57 + 39 64 sendfile sys_sendfile64 58 + 40 common lstat sys_newlstat compat_sys_newlstat 59 + 41 common dup sys_dup 60 + 42 common pipe sys_sparc_pipe 61 + 43 common times sys_times compat_sys_times 62 + 44 32 getuid32 sys_getuid 63 + 45 common umount2 sys_umount 64 + 46 32 setgid sys_setgid16 65 + 46 64 setgid sys_setgid 66 + 47 32 getgid sys_getgid16 67 + 47 64 getgid sys_getgid 68 + 48 common signal sys_signal 69 + 49 32 geteuid sys_geteuid16 70 + 49 64 geteuid sys_geteuid 71 + 50 32 getegid sys_getegid16 72 + 50 64 getegid sys_getegid 73 + 51 common acct sys_acct 74 + 52 64 memory_ordering sys_memory_ordering 75 + 53 32 getgid32 sys_getgid 76 + 54 common ioctl sys_ioctl compat_sys_ioctl 77 + 55 common reboot sys_reboot 78 + 56 32 mmap2 sys_mmap2 sys32_mmap2 79 + 57 common symlink sys_symlink 80 + 58 common readlink sys_readlink 81 + 59 32 execve sys_execve sys32_execve 82 + 59 64 execve sys64_execve 83 + 60 common umask sys_umask 84 + 61 common chroot sys_chroot 85 + 62 common fstat sys_newfstat compat_sys_newfstat 86 + 63 common fstat64 sys_fstat64 compat_sys_fstat64 87 + 64 common getpagesize sys_getpagesize 88 + 65 common msync sys_msync 89 + 66 common vfork sys_vfork 90 + 67 common pread64 sys_pread64 compat_sys_pread64 91 + 68 common pwrite64 sys_pwrite64 compat_sys_pwrite64 92 + 69 32 geteuid32 sys_geteuid 93 + 70 32 getegid32 sys_getegid 94 + 71 common mmap sys_mmap 95 + 72 32 setreuid32 sys_setreuid 96 + 73 32 munmap sys_munmap 97 + 73 64 munmap sys_64_munmap 98 + 74 common mprotect sys_mprotect 99 + 75 common madvise sys_madvise 100 + 76 common vhangup sys_vhangup 101 + 77 32 truncate64 sys_truncate64 compat_sys_truncate64 102 + 78 common mincore sys_mincore 103 + 79 32 getgroups sys_getgroups16 104 + 79 64 getgroups sys_getgroups 105 + 80 32 setgroups sys_setgroups16 106 + 80 64 setgroups sys_setgroups 107 + 81 common getpgrp sys_getpgrp 108 + 82 32 setgroups32 sys_setgroups 109 + 83 common setitimer sys_setitimer compat_sys_setitimer 110 + 84 32 ftruncate64 sys_ftruncate64 compat_sys_ftruncate64 111 + 85 common swapon sys_swapon 112 + 86 common getitimer sys_getitimer compat_sys_getitimer 113 + 87 32 setuid32 sys_setuid 114 + 88 common sethostname sys_sethostname 115 + 89 32 setgid32 sys_setgid 116 + 90 common dup2 sys_dup2 117 + 91 32 setfsuid32 sys_setfsuid 118 + 92 common fcntl sys_fcntl compat_sys_fcntl 119 + 93 common select sys_select 120 + 94 32 setfsgid32 sys_setfsgid 121 + 95 common fsync sys_fsync 122 + 96 common setpriority sys_setpriority 123 + 97 common socket sys_socket 124 + 98 common connect sys_connect 125 + 99 common accept sys_accept 126 + 100 common getpriority sys_getpriority 127 + 101 common rt_sigreturn sys_rt_sigreturn sys32_rt_sigreturn 128 + 102 common rt_sigaction sys_rt_sigaction compat_sys_rt_sigaction 129 + 103 common rt_sigprocmask sys_rt_sigprocmask compat_sys_rt_sigprocmask 130 + 104 common rt_sigpending sys_rt_sigpending compat_sys_rt_sigpending 131 + 105 common rt_sigtimedwait sys_rt_sigtimedwait compat_sys_rt_sigtimedwait 132 + 106 common rt_sigqueueinfo sys_rt_sigqueueinfo compat_sys_rt_sigqueueinfo 133 + 107 common rt_sigsuspend sys_rt_sigsuspend compat_sys_rt_sigsuspend 134 + 108 32 setresuid32 sys_setresuid 135 + 108 64 setresuid sys_setresuid 136 + 109 32 getresuid32 sys_getresuid 137 + 109 64 getresuid sys_getresuid 138 + 110 32 setresgid32 sys_setresgid 139 + 110 64 setresgid sys_setresgid 140 + 111 32 getresgid32 sys_getresgid 141 + 111 64 getresgid sys_getresgid 142 + 112 32 setregid32 sys_setregid 143 + 113 common recvmsg sys_recvmsg compat_sys_recvmsg 144 + 114 common sendmsg sys_sendmsg compat_sys_sendmsg 145 + 115 32 getgroups32 sys_getgroups 146 + 116 common gettimeofday sys_gettimeofday compat_sys_gettimeofday 147 + 117 common getrusage sys_getrusage compat_sys_getrusage 148 + 118 common getsockopt sys_getsockopt compat_sys_getsockopt 149 + 119 common getcwd sys_getcwd 150 + 120 common readv sys_readv compat_sys_readv 151 + 121 common writev sys_writev compat_sys_writev 152 + 122 common settimeofday sys_settimeofday compat_sys_settimeofday 153 + 123 32 fchown sys_fchown16 154 + 123 64 fchown sys_fchown 155 + 124 common fchmod sys_fchmod 156 + 125 common recvfrom sys_recvfrom 157 + 126 32 setreuid sys_setreuid16 158 + 126 64 setreuid sys_setreuid 159 + 127 32 setregid sys_setregid16 160 + 127 64 setregid sys_setregid 161 + 128 common rename sys_rename 162 + 129 common truncate sys_truncate compat_sys_truncate 163 + 130 common ftruncate sys_ftruncate compat_sys_ftruncate 164 + 131 common flock sys_flock 165 + 132 common lstat64 sys_lstat64 compat_sys_lstat64 166 + 133 common sendto sys_sendto 167 + 134 common shutdown sys_shutdown 168 + 135 common socketpair sys_socketpair 169 + 136 common mkdir sys_mkdir 170 + 137 common rmdir sys_rmdir 171 + 138 common utimes sys_utimes compat_sys_utimes 172 + 139 common stat64 sys_stat64 compat_sys_stat64 173 + 140 common sendfile64 sys_sendfile64 174 + 141 common getpeername sys_getpeername 175 + 142 common futex sys_futex compat_sys_futex 176 + 143 common gettid sys_gettid 177 + 144 common getrlimit sys_getrlimit compat_sys_getrlimit 178 + 145 common setrlimit sys_setrlimit compat_sys_setrlimit 179 + 146 common pivot_root sys_pivot_root 180 + 147 common prctl sys_prctl 181 + 148 common pciconfig_read sys_pciconfig_read 182 + 149 common pciconfig_write sys_pciconfig_write 183 + 150 common getsockname sys_getsockname 184 + 151 common inotify_init sys_inotify_init 185 + 152 common inotify_add_watch sys_inotify_add_watch 186 + 153 common poll sys_poll 187 + 154 common getdents64 sys_getdents64 188 + 155 32 fcntl64 sys_fcntl64 compat_sys_fcntl64 189 + 156 common inotify_rm_watch sys_inotify_rm_watch 190 + 157 common statfs sys_statfs compat_sys_statfs 191 + 158 common fstatfs sys_fstatfs compat_sys_fstatfs 192 + 159 common umount sys_oldumount 193 + 160 common sched_set_affinity sys_sched_setaffinity compat_sys_sched_setaffinity 194 + 161 common sched_get_affinity sys_sched_getaffinity compat_sys_sched_getaffinity 195 + 162 common getdomainname sys_getdomainname 196 + 163 common setdomainname sys_setdomainname 197 + 164 64 utrap_install sys_utrap_install 198 + 165 common quotactl sys_quotactl 199 + 166 common set_tid_address sys_set_tid_address 200 + 167 common mount sys_mount compat_sys_mount 201 + 168 common ustat sys_ustat compat_sys_ustat 202 + 169 common setxattr sys_setxattr 203 + 170 common lsetxattr sys_lsetxattr 204 + 171 common fsetxattr sys_fsetxattr 205 + 172 common getxattr sys_getxattr 206 + 173 common lgetxattr sys_lgetxattr 207 + 174 common getdents sys_getdents compat_sys_getdents 208 + 175 common setsid sys_setsid 209 + 176 common fchdir sys_fchdir 210 + 177 common fgetxattr sys_fgetxattr 211 + 178 common listxattr sys_listxattr 212 + 179 common llistxattr sys_llistxattr 213 + 180 common flistxattr sys_flistxattr 214 + 181 common removexattr sys_removexattr 215 + 182 common lremovexattr sys_lremovexattr 216 + 183 32 sigpending sys_sigpending compat_sys_sigpending 217 + 183 64 sigpending sys_nis_syscall 218 + 184 common query_module sys_ni_syscall 219 + 185 common setpgid sys_setpgid 220 + 186 common fremovexattr sys_fremovexattr 221 + 187 common tkill sys_tkill 222 + 188 32 exit_group sys_exit_group sparc_exit_group 223 + 188 64 exit_group sparc_exit_group 224 + 189 common uname sys_newuname 225 + 190 common init_module sys_init_module 226 + 191 32 personality sys_personality sys_sparc64_personality 227 + 191 64 personality sys_sparc64_personality 228 + 192 32 remap_file_pages sys_sparc_remap_file_pages sys_remap_file_pages 229 + 192 64 remap_file_pages sys_remap_file_pages 230 + 193 common epoll_create sys_epoll_create 231 + 194 common epoll_ctl sys_epoll_ctl 232 + 195 common epoll_wait sys_epoll_wait 233 + 196 common ioprio_set sys_ioprio_set 234 + 197 common getppid sys_getppid 235 + 198 32 sigaction sys_sparc_sigaction compat_sys_sparc_sigaction 236 + 198 64 sigaction sys_nis_syscall 237 + 199 common sgetmask sys_sgetmask 238 + 200 common ssetmask sys_ssetmask 239 + 201 32 sigsuspend sys_sigsuspend 240 + 201 64 sigsuspend sys_nis_syscall 241 + 202 common oldlstat sys_newlstat compat_sys_newlstat 242 + 203 common uselib sys_uselib 243 + 204 32 readdir sys_old_readdir compat_sys_old_readdir 244 + 204 64 readdir sys_nis_syscall 245 + 205 common readahead sys_readahead compat_sys_readahead 246 + 206 common socketcall sys_socketcall sys32_socketcall 247 + 207 common syslog sys_syslog 248 + 208 common lookup_dcookie sys_lookup_dcookie compat_sys_lookup_dcookie 249 + 209 common fadvise64 sys_fadvise64 compat_sys_fadvise64 250 + 210 common fadvise64_64 sys_fadvise64_64 compat_sys_fadvise64_64 251 + 211 common tgkill sys_tgkill 252 + 212 common waitpid sys_waitpid 253 + 213 common swapoff sys_swapoff 254 + 214 common sysinfo sys_sysinfo compat_sys_sysinfo 255 + 215 32 ipc sys_ipc compat_sys_ipc 256 + 215 64 ipc sys_sparc_ipc 257 + 216 32 sigreturn sys_sigreturn sys32_sigreturn 258 + 216 64 sigreturn sys_nis_syscall 259 + 217 common clone sys_clone 260 + 218 common ioprio_get sys_ioprio_get 261 + 219 common adjtimex sys_adjtimex compat_sys_adjtimex 262 + 220 32 sigprocmask sys_sigprocmask compat_sys_sigprocmask 263 + 220 64 sigprocmask sys_nis_syscall 264 + 221 common create_module sys_ni_syscall 265 + 222 common delete_module sys_delete_module 266 + 223 common get_kernel_syms sys_ni_syscall 267 + 224 common getpgid sys_getpgid 268 + 225 common bdflush sys_bdflush 269 + 226 common sysfs sys_sysfs 270 + 227 common afs_syscall sys_nis_syscall 271 + 228 common setfsuid sys_setfsuid16 272 + 229 common setfsgid sys_setfsgid16 273 + 230 common _newselect sys_select compat_sys_select 274 + 231 32 time sys_time compat_sys_time 275 + 232 common splice sys_splice 276 + 233 common stime sys_stime compat_sys_stime 277 + 234 common statfs64 sys_statfs64 compat_sys_statfs64 278 + 235 common fstatfs64 sys_fstatfs64 compat_sys_fstatfs64 279 + 236 common _llseek sys_llseek 280 + 237 common mlock sys_mlock 281 + 238 common munlock sys_munlock 282 + 239 common mlockall sys_mlockall 283 + 240 common munlockall sys_munlockall 284 + 241 common sched_setparam sys_sched_setparam 285 + 242 common sched_getparam sys_sched_getparam 286 + 243 common sched_setscheduler sys_sched_setscheduler 287 + 244 common sched_getscheduler sys_sched_getscheduler 288 + 245 common sched_yield sys_sched_yield 289 + 246 common sched_get_priority_max sys_sched_get_priority_max 290 + 247 common sched_get_priority_min sys_sched_get_priority_min 291 + 248 common sched_rr_get_interval sys_sched_rr_get_interval compat_sys_sched_rr_get_interval 292 + 249 common nanosleep sys_nanosleep compat_sys_nanosleep 293 + 250 32 mremap sys_mremap 294 + 250 64 mremap sys_64_mremap 295 + 251 common _sysctl sys_sysctl compat_sys_sysctl 296 + 252 common getsid sys_getsid 297 + 253 common fdatasync sys_fdatasync 298 + 254 32 nfsservctl sys_ni_syscall sys_nis_syscall 299 + 254 64 nfsservctl sys_nis_syscall 300 + 255 common sync_file_range sys_sync_file_range compat_sys_sync_file_range 301 + 256 common clock_settime sys_clock_settime compat_sys_clock_settime 302 + 257 common clock_gettime sys_clock_gettime compat_sys_clock_gettime 303 + 258 common clock_getres sys_clock_getres compat_sys_clock_getres 304 + 259 common clock_nanosleep sys_clock_nanosleep compat_sys_clock_nanosleep 305 + 260 common sched_getaffinity sys_sched_getaffinity compat_sys_sched_getaffinity 306 + 261 common sched_setaffinity sys_sched_setaffinity compat_sys_sched_setaffinity 307 + 262 common timer_settime sys_timer_settime compat_sys_timer_settime 308 + 263 common timer_gettime sys_timer_gettime compat_sys_timer_gettime 309 + 264 common timer_getoverrun sys_timer_getoverrun 310 + 265 common timer_delete sys_timer_delete 311 + 266 common timer_create sys_timer_create compat_sys_timer_create 312 + # 267 was vserver 313 + 267 common vserver sys_nis_syscall 314 + 268 common io_setup sys_io_setup compat_sys_io_setup 315 + 269 common io_destroy sys_io_destroy 316 + 270 common io_submit sys_io_submit compat_sys_io_submit 317 + 271 common io_cancel sys_io_cancel 318 + 272 common io_getevents sys_io_getevents compat_sys_io_getevents 319 + 273 common mq_open sys_mq_open compat_sys_mq_open 320 + 274 common mq_unlink sys_mq_unlink 321 + 275 common mq_timedsend sys_mq_timedsend compat_sys_mq_timedsend 322 + 276 common mq_timedreceive sys_mq_timedreceive compat_sys_mq_timedreceive 323 + 277 common mq_notify sys_mq_notify compat_sys_mq_notify 324 + 278 common mq_getsetattr sys_mq_getsetattr compat_sys_mq_getsetattr 325 + 279 common waitid sys_waitid compat_sys_waitid 326 + 280 common tee sys_tee 327 + 281 common add_key sys_add_key 328 + 282 common request_key sys_request_key 329 + 283 common keyctl sys_keyctl compat_sys_keyctl 330 + 284 common openat sys_openat compat_sys_openat 331 + 285 common mkdirat sys_mkdirat 332 + 286 common mknodat sys_mknodat 333 + 287 common fchownat sys_fchownat 334 + 288 common futimesat sys_futimesat compat_sys_futimesat 335 + 289 common fstatat64 sys_fstatat64 compat_sys_fstatat64 336 + 290 common unlinkat sys_unlinkat 337 + 291 common renameat sys_renameat 338 + 292 common linkat sys_linkat 339 + 293 common symlinkat sys_symlinkat 340 + 294 common readlinkat sys_readlinkat 341 + 295 common fchmodat sys_fchmodat 342 + 296 common faccessat sys_faccessat 343 + 297 common pselect6 sys_pselect6 compat_sys_pselect6 344 + 298 common ppoll sys_ppoll compat_sys_ppoll 345 + 299 common unshare sys_unshare 346 + 300 common set_robust_list sys_set_robust_list compat_sys_set_robust_list 347 + 301 common get_robust_list sys_get_robust_list compat_sys_get_robust_list 348 + 302 common migrate_pages sys_migrate_pages compat_sys_migrate_pages 349 + 303 common mbind sys_mbind compat_sys_mbind 350 + 304 common get_mempolicy sys_get_mempolicy compat_sys_get_mempolicy 351 + 305 common set_mempolicy sys_set_mempolicy compat_sys_set_mempolicy 352 + 306 common kexec_load sys_kexec_load compat_sys_kexec_load 353 + 307 common move_pages sys_move_pages compat_sys_move_pages 354 + 308 common getcpu sys_getcpu 355 + 309 common epoll_pwait sys_epoll_pwait compat_sys_epoll_pwait 356 + 310 common utimensat sys_utimensat compat_sys_utimensat 357 + 311 common signalfd sys_signalfd compat_sys_signalfd 358 + 312 common timerfd_create sys_timerfd_create 359 + 313 common eventfd sys_eventfd 360 + 314 common fallocate sys_fallocate compat_sys_fallocate 361 + 315 common timerfd_settime sys_timerfd_settime compat_sys_timerfd_settime 362 + 316 common timerfd_gettime sys_timerfd_gettime compat_sys_timerfd_gettime 363 + 317 common signalfd4 sys_signalfd4 compat_sys_signalfd4 364 + 318 common eventfd2 sys_eventfd2 365 + 319 common epoll_create1 sys_epoll_create1 366 + 320 common dup3 sys_dup3 367 + 321 common pipe2 sys_pipe2 368 + 322 common inotify_init1 sys_inotify_init1 369 + 323 common accept4 sys_accept4 370 + 324 common preadv sys_preadv compat_sys_preadv 371 + 325 common pwritev sys_pwritev compat_sys_pwritev 372 + 326 common rt_tgsigqueueinfo sys_rt_tgsigqueueinfo compat_sys_rt_tgsigqueueinfo 373 + 327 common perf_event_open sys_perf_event_open 374 + 328 common recvmmsg sys_recvmmsg compat_sys_recvmmsg 375 + 329 common fanotify_init sys_fanotify_init 376 + 330 common fanotify_mark sys_fanotify_mark compat_sys_fanotify_mark 377 + 331 common prlimit64 sys_prlimit64 378 + 332 common name_to_handle_at sys_name_to_handle_at 379 + 333 common open_by_handle_at sys_open_by_handle_at compat_sys_open_by_handle_at 380 + 334 common clock_adjtime sys_clock_adjtime compat_sys_clock_adjtime 381 + 335 common syncfs sys_syncfs 382 + 336 common sendmmsg sys_sendmmsg compat_sys_sendmmsg 383 + 337 common setns sys_setns 384 + 338 common process_vm_readv sys_process_vm_readv compat_sys_process_vm_readv 385 + 339 common process_vm_writev sys_process_vm_writev compat_sys_process_vm_writev 386 + 340 32 kern_features sys_ni_syscall sys_kern_features 387 + 340 64 kern_features sys_kern_features 388 + 341 common kcmp sys_kcmp 389 + 342 common finit_module sys_finit_module 390 + 343 common sched_setattr sys_sched_setattr 391 + 344 common sched_getattr sys_sched_getattr 392 + 345 common renameat2 sys_renameat2 393 + 346 common seccomp sys_seccomp 394 + 347 common getrandom sys_getrandom 395 + 348 common memfd_create sys_memfd_create 396 + 349 common bpf sys_bpf 397 + 350 32 execveat sys_execveat sys32_execveat 398 + 350 64 execveat sys64_execveat 399 + 351 common membarrier sys_membarrier 400 + 352 common userfaultfd sys_userfaultfd 401 + 353 common bind sys_bind 402 + 354 common listen sys_listen 403 + 355 common setsockopt sys_setsockopt compat_sys_setsockopt 404 + 356 common mlock2 sys_mlock2 405 + 357 common copy_file_range sys_copy_file_range 406 + 358 common preadv2 sys_preadv2 compat_sys_preadv2 407 + 359 common pwritev2 sys_pwritev2 compat_sys_pwritev2 408 + 360 common statx sys_statx 409 + 361 common io_pgetevents sys_io_pgetevents compat_sys_io_pgetevents
+36
arch/sparc/kernel/syscalls/syscallhdr.sh
··· 1 + #!/bin/sh 2 + # SPDX-License-Identifier: GPL-2.0 3 + 4 + in="$1" 5 + out="$2" 6 + my_abis=`echo "($3)" | tr ',' '|'` 7 + prefix="$4" 8 + offset="$5" 9 + 10 + fileguard=_UAPI_ASM_SPARC_`basename "$out" | sed \ 11 + -e 'y/abcdefghijklmnopqrstuvwxyz/ABCDEFGHIJKLMNOPQRSTUVWXYZ/' \ 12 + -e 's/[^A-Z0-9_]/_/g' -e 's/__/_/g'` 13 + grep -E "^[0-9A-Fa-fXx]+[[:space:]]+${my_abis}" "$in" | sort -n | ( 14 + printf "#ifndef %s\n" "${fileguard}" 15 + printf "#define %s\n" "${fileguard}" 16 + printf "\n" 17 + 18 + nxt=0 19 + while read nr abi name entry compat ; do 20 + if [ -z "$offset" ]; then 21 + printf "#define __NR_%s%s\t%s\n" \ 22 + "${prefix}" "${name}" "${nr}" 23 + else 24 + printf "#define __NR_%s%s\t(%s + %s)\n" \ 25 + "${prefix}" "${name}" "${offset}" "${nr}" 26 + fi 27 + nxt=$((nr+1)) 28 + done 29 + 30 + printf "\n" 31 + printf "#ifdef __KERNEL__\n" 32 + printf "#define __NR_syscalls\t%s\n" "${nxt}" 33 + printf "#endif\n" 34 + printf "\n" 35 + printf "#endif /* %s */" "${fileguard}" 36 + ) > "$out"
+36
arch/sparc/kernel/syscalls/syscalltbl.sh
··· 1 + #!/bin/sh 2 + # SPDX-License-Identifier: GPL-2.0 3 + 4 + in="$1" 5 + out="$2" 6 + my_abis=`echo "($3)" | tr ',' '|'` 7 + my_abi="$4" 8 + offset="$5" 9 + 10 + emit() { 11 + t_nxt="$1" 12 + t_nr="$2" 13 + t_entry="$3" 14 + 15 + while [ $t_nxt -lt $t_nr ]; do 16 + printf "__SYSCALL(%s, sys_nis_syscall, )\n" "${t_nxt}" 17 + t_nxt=$((t_nxt+1)) 18 + done 19 + printf "__SYSCALL(%s, %s, )\n" "${t_nxt}" "${t_entry}" 20 + } 21 + 22 + grep -E "^[0-9A-Fa-fXx]+[[:space:]]+${my_abis}" "$in" | sort -n | ( 23 + nxt=0 24 + if [ -z "$offset" ]; then 25 + offset=0 26 + fi 27 + 28 + while read nr abi name entry compat ; do 29 + if [ "$my_abi" = "c32" ] && [ ! -z "$compat" ]; then 30 + emit $((nxt+offset)) $((nr+offset)) $compat 31 + else 32 + emit $((nxt+offset)) $((nr+offset)) $entry 33 + fi 34 + nxt=$((nr+1)) 35 + done 36 + ) > "$out"
+3 -78
arch/sparc/kernel/systbls_32.S
··· 9 9 * Copyright (C) 1995 Adrian M. Rodriguez (adrian@remus.rutgers.edu) 10 10 */ 11 11 12 - 12 + #define __SYSCALL(nr, entry, nargs) .long entry 13 13 .data 14 14 .align 4 15 - 16 - /* First, the Linux native syscall table. */ 17 - 18 15 .globl sys_call_table 19 16 sys_call_table: 20 - /*0*/ .long sys_restart_syscall, sys_exit, sys_fork, sys_read, sys_write 21 - /*5*/ .long sys_open, sys_close, sys_wait4, sys_creat, sys_link 22 - /*10*/ .long sys_unlink, sunos_execv, sys_chdir, sys_chown16, sys_mknod 23 - /*15*/ .long sys_chmod, sys_lchown16, sys_brk, sys_nis_syscall, sys_lseek 24 - /*20*/ .long sys_getpid, sys_capget, sys_capset, sys_setuid16, sys_getuid16 25 - /*25*/ .long sys_vmsplice, sys_ptrace, sys_alarm, sys_sigaltstack, sys_pause 26 - /*30*/ .long sys_utime, sys_lchown, sys_fchown, sys_access, sys_nice 27 - /*35*/ .long sys_chown, sys_sync, sys_kill, sys_newstat, sys_sendfile 28 - /*40*/ .long sys_newlstat, sys_dup, sys_sparc_pipe, sys_times, sys_getuid 29 - /*45*/ .long sys_umount, sys_setgid16, sys_getgid16, sys_signal, sys_geteuid16 30 - /*50*/ .long sys_getegid16, sys_acct, sys_nis_syscall, sys_getgid, sys_ioctl 31 - /*55*/ .long sys_reboot, sys_mmap2, sys_symlink, sys_readlink, sys_execve 32 - /*60*/ .long sys_umask, sys_chroot, sys_newfstat, sys_fstat64, sys_getpagesize 33 - /*65*/ .long sys_msync, sys_vfork, sys_pread64, sys_pwrite64, sys_geteuid 34 - /*70*/ .long sys_getegid, sys_mmap, sys_setreuid, sys_munmap, sys_mprotect 35 - /*75*/ .long sys_madvise, sys_vhangup, sys_truncate64, sys_mincore, sys_getgroups16 36 - /*80*/ .long sys_setgroups16, sys_getpgrp, sys_setgroups, sys_setitimer, sys_ftruncate64 37 - /*85*/ .long sys_swapon, sys_getitimer, sys_setuid, sys_sethostname, sys_setgid 38 - /*90*/ .long sys_dup2, sys_setfsuid, sys_fcntl, sys_select, sys_setfsgid 39 - /*95*/ .long sys_fsync, sys_setpriority, sys_socket, sys_connect, sys_accept 40 - /*100*/ .long sys_getpriority, sys_rt_sigreturn, sys_rt_sigaction, sys_rt_sigprocmask, sys_rt_sigpending 41 - /*105*/ .long sys_rt_sigtimedwait, sys_rt_sigqueueinfo, sys_rt_sigsuspend, sys_setresuid, sys_getresuid 42 - /*110*/ .long sys_setresgid, sys_getresgid, sys_setregid, sys_recvmsg, sys_sendmsg 43 - /*115*/ .long sys_getgroups, sys_gettimeofday, sys_getrusage, sys_getsockopt, sys_getcwd 44 - /*120*/ .long sys_readv, sys_writev, sys_settimeofday, sys_fchown16, sys_fchmod 45 - /*125*/ .long sys_recvfrom, sys_setreuid16, sys_setregid16, sys_rename, sys_truncate 46 - /*130*/ .long sys_ftruncate, sys_flock, sys_lstat64, sys_sendto, sys_shutdown 47 - /*135*/ .long sys_socketpair, sys_mkdir, sys_rmdir, sys_utimes, sys_stat64 48 - /*140*/ .long sys_sendfile64, sys_getpeername, sys_futex, sys_gettid, sys_getrlimit 49 - /*145*/ .long sys_setrlimit, sys_pivot_root, sys_prctl, sys_pciconfig_read, sys_pciconfig_write 50 - /*150*/ .long sys_getsockname, sys_inotify_init, sys_inotify_add_watch, sys_poll, sys_getdents64 51 - /*155*/ .long sys_fcntl64, sys_inotify_rm_watch, sys_statfs, sys_fstatfs, sys_oldumount 52 - /*160*/ .long sys_sched_setaffinity, sys_sched_getaffinity, sys_getdomainname, sys_setdomainname, sys_nis_syscall 53 - /*165*/ .long sys_quotactl, sys_set_tid_address, sys_mount, sys_ustat, sys_setxattr 54 - /*170*/ .long sys_lsetxattr, sys_fsetxattr, sys_getxattr, sys_lgetxattr, sys_getdents 55 - /*175*/ .long sys_setsid, sys_fchdir, sys_fgetxattr, sys_listxattr, sys_llistxattr 56 - /*180*/ .long sys_flistxattr, sys_removexattr, sys_lremovexattr, sys_sigpending, sys_ni_syscall 57 - /*185*/ .long sys_setpgid, sys_fremovexattr, sys_tkill, sys_exit_group, sys_newuname 58 - /*190*/ .long sys_init_module, sys_personality, sys_sparc_remap_file_pages, sys_epoll_create, sys_epoll_ctl 59 - /*195*/ .long sys_epoll_wait, sys_ioprio_set, sys_getppid, sys_sparc_sigaction, sys_sgetmask 60 - /*200*/ .long sys_ssetmask, sys_sigsuspend, sys_newlstat, sys_uselib, sys_old_readdir 61 - /*205*/ .long sys_readahead, sys_socketcall, sys_syslog, sys_lookup_dcookie, sys_fadvise64 62 - /*210*/ .long sys_fadvise64_64, sys_tgkill, sys_waitpid, sys_swapoff, sys_sysinfo 63 - /*215*/ .long sys_ipc, sys_sigreturn, sys_clone, sys_ioprio_get, sys_adjtimex 64 - /*220*/ .long sys_sigprocmask, sys_ni_syscall, sys_delete_module, sys_ni_syscall, sys_getpgid 65 - /*225*/ .long sys_bdflush, sys_sysfs, sys_nis_syscall, sys_setfsuid16, sys_setfsgid16 66 - /*230*/ .long sys_select, sys_time, sys_splice, sys_stime, sys_statfs64 67 - /* "We are the Knights of the Forest of Ni!!" */ 68 - /*235*/ .long sys_fstatfs64, sys_llseek, sys_mlock, sys_munlock, sys_mlockall 69 - /*240*/ .long sys_munlockall, sys_sched_setparam, sys_sched_getparam, sys_sched_setscheduler, sys_sched_getscheduler 70 - /*245*/ .long sys_sched_yield, sys_sched_get_priority_max, sys_sched_get_priority_min, sys_sched_rr_get_interval, sys_nanosleep 71 - /*250*/ .long sys_mremap, sys_sysctl, sys_getsid, sys_fdatasync, sys_ni_syscall 72 - /*255*/ .long sys_sync_file_range, sys_clock_settime, sys_clock_gettime, sys_clock_getres, sys_clock_nanosleep 73 - /*260*/ .long sys_sched_getaffinity, sys_sched_setaffinity, sys_timer_settime, sys_timer_gettime, sys_timer_getoverrun 74 - /*265*/ .long sys_timer_delete, sys_timer_create, sys_nis_syscall, sys_io_setup, sys_io_destroy 75 - /*270*/ .long sys_io_submit, sys_io_cancel, sys_io_getevents, sys_mq_open, sys_mq_unlink 76 - /*275*/ .long sys_mq_timedsend, sys_mq_timedreceive, sys_mq_notify, sys_mq_getsetattr, sys_waitid 77 - /*280*/ .long sys_tee, sys_add_key, sys_request_key, sys_keyctl, sys_openat 78 - /*285*/ .long sys_mkdirat, sys_mknodat, sys_fchownat, sys_futimesat, sys_fstatat64 79 - /*290*/ .long sys_unlinkat, sys_renameat, sys_linkat, sys_symlinkat, sys_readlinkat 80 - /*295*/ .long sys_fchmodat, sys_faccessat, sys_pselect6, sys_ppoll, sys_unshare 81 - /*300*/ .long sys_set_robust_list, sys_get_robust_list, sys_migrate_pages, sys_mbind, sys_get_mempolicy 82 - /*305*/ .long sys_set_mempolicy, sys_kexec_load, sys_move_pages, sys_getcpu, sys_epoll_pwait 83 - /*310*/ .long sys_utimensat, sys_signalfd, sys_timerfd_create, sys_eventfd, sys_fallocate 84 - /*315*/ .long sys_timerfd_settime, sys_timerfd_gettime, sys_signalfd4, sys_eventfd2, sys_epoll_create1 85 - /*320*/ .long sys_dup3, sys_pipe2, sys_inotify_init1, sys_accept4, sys_preadv 86 - /*325*/ .long sys_pwritev, sys_rt_tgsigqueueinfo, sys_perf_event_open, sys_recvmmsg, sys_fanotify_init 87 - /*330*/ .long sys_fanotify_mark, sys_prlimit64, sys_name_to_handle_at, sys_open_by_handle_at, sys_clock_adjtime 88 - /*335*/ .long sys_syncfs, sys_sendmmsg, sys_setns, sys_process_vm_readv, sys_process_vm_writev 89 - /*340*/ .long sys_ni_syscall, sys_kcmp, sys_finit_module, sys_sched_setattr, sys_sched_getattr 90 - /*345*/ .long sys_renameat2, sys_seccomp, sys_getrandom, sys_memfd_create, sys_bpf 91 - /*350*/ .long sys_execveat, sys_membarrier, sys_userfaultfd, sys_bind, sys_listen 92 - /*355*/ .long sys_setsockopt, sys_mlock2, sys_copy_file_range, sys_preadv2, sys_pwritev2 93 - /*360*/ .long sys_statx, sys_io_pgetevents 17 + #include <asm/syscall_table_32.h> /* 32-bit native syscalls */ 18 + #undef __SYSCALL
+4 -153
arch/sparc/kernel/systbls_64.S
··· 10 10 * Copyright (C) 1995 Adrian M. Rodriguez (adrian@remus.rutgers.edu) 11 11 */ 12 12 13 - 13 + #define __SYSCALL(nr, entry, nargs) .word entry 14 14 .text 15 15 .align 4 16 - 17 16 #ifdef CONFIG_COMPAT 18 - /* First, the 32-bit Linux native syscall table. */ 19 - 20 17 .globl sys_call_table32 21 18 sys_call_table32: 22 - /*0*/ .word sys_restart_syscall, sparc_exit, sys_fork, sys_read, sys_write 23 - /*5*/ .word compat_sys_open, sys_close, compat_sys_wait4, sys_creat, sys_link 24 - /*10*/ .word sys_unlink, sunos_execv, sys_chdir, sys_chown16, sys_mknod 25 - /*15*/ .word sys_chmod, sys_lchown16, sys_brk, sys_nis_syscall, compat_sys_lseek 26 - /*20*/ .word sys_getpid, sys_capget, sys_capset, sys_setuid16, sys_getuid16 27 - /*25*/ .word compat_sys_vmsplice, compat_sys_ptrace, sys_alarm, compat_sys_sigaltstack, sys_pause 28 - /*30*/ .word compat_sys_utime, sys_lchown, sys_fchown, sys_access, sys_nice 29 - .word sys_chown, sys_sync, sys_kill, compat_sys_newstat, compat_sys_sendfile 30 - /*40*/ .word compat_sys_newlstat, sys_dup, sys_sparc_pipe, compat_sys_times, sys_getuid 31 - .word sys_umount, sys_setgid16, sys_getgid16, sys_signal, sys_geteuid16 32 - /*50*/ .word sys_getegid16, sys_acct, sys_nis_syscall, sys_getgid, compat_sys_ioctl 33 - .word sys_reboot, sys32_mmap2, sys_symlink, sys_readlink, sys32_execve 34 - /*60*/ .word sys_umask, sys_chroot, compat_sys_newfstat, compat_sys_fstat64, sys_getpagesize 35 - .word sys_msync, sys_vfork, compat_sys_pread64, compat_sys_pwrite64, sys_geteuid 36 - /*70*/ .word sys_getegid, sys_mmap, sys_setreuid, sys_munmap, sys_mprotect 37 - .word sys_madvise, sys_vhangup, compat_sys_truncate64, sys_mincore, sys_getgroups16 38 - /*80*/ .word sys_setgroups16, sys_getpgrp, sys_setgroups, compat_sys_setitimer, compat_sys_ftruncate64 39 - .word sys_swapon, compat_sys_getitimer, sys_setuid, sys_sethostname, sys_setgid 40 - /*90*/ .word sys_dup2, sys_setfsuid, compat_sys_fcntl, compat_sys_select, sys_setfsgid 41 - .word sys_fsync, sys_setpriority, sys_socket, sys_connect, sys_accept 42 - /*100*/ .word sys_getpriority, sys32_rt_sigreturn, compat_sys_rt_sigaction, compat_sys_rt_sigprocmask, compat_sys_rt_sigpending 43 - .word compat_sys_rt_sigtimedwait, compat_sys_rt_sigqueueinfo, compat_sys_rt_sigsuspend, sys_setresuid, sys_getresuid 44 - /*110*/ .word sys_setresgid, sys_getresgid, sys_setregid, compat_sys_recvmsg, compat_sys_sendmsg 45 - .word sys_getgroups, compat_sys_gettimeofday, compat_sys_getrusage, compat_sys_getsockopt, sys_getcwd 46 - /*120*/ .word compat_sys_readv, compat_sys_writev, compat_sys_settimeofday, sys_fchown16, sys_fchmod 47 - .word sys_recvfrom, sys_setreuid16, sys_setregid16, sys_rename, compat_sys_truncate 48 - /*130*/ .word compat_sys_ftruncate, sys_flock, compat_sys_lstat64, sys_sendto, sys_shutdown 49 - .word sys_socketpair, sys_mkdir, sys_rmdir, compat_sys_utimes, compat_sys_stat64 50 - /*140*/ .word sys_sendfile64, sys_getpeername, compat_sys_futex, sys_gettid, compat_sys_getrlimit 51 - .word compat_sys_setrlimit, sys_pivot_root, sys_prctl, sys_pciconfig_read, sys_pciconfig_write 52 - /*150*/ .word sys_getsockname, sys_inotify_init, sys_inotify_add_watch, sys_poll, sys_getdents64 53 - .word compat_sys_fcntl64, sys_inotify_rm_watch, compat_sys_statfs, compat_sys_fstatfs, sys_oldumount 54 - /*160*/ .word compat_sys_sched_setaffinity, compat_sys_sched_getaffinity, sys_getdomainname, sys_setdomainname, sys_nis_syscall 55 - .word sys_quotactl, sys_set_tid_address, compat_sys_mount, compat_sys_ustat, sys_setxattr 56 - /*170*/ .word sys_lsetxattr, sys_fsetxattr, sys_getxattr, sys_lgetxattr, compat_sys_getdents 57 - .word sys_setsid, sys_fchdir, sys_fgetxattr, sys_listxattr, sys_llistxattr 58 - /*180*/ .word sys_flistxattr, sys_removexattr, sys_lremovexattr, compat_sys_sigpending, sys_ni_syscall 59 - .word sys_setpgid, sys_fremovexattr, sys_tkill, sparc_exit_group, sys_newuname 60 - /*190*/ .word sys_init_module, sys_sparc64_personality, sys_remap_file_pages, sys_epoll_create, sys_epoll_ctl 61 - .word sys_epoll_wait, sys_ioprio_set, sys_getppid, compat_sys_sparc_sigaction, sys_sgetmask 62 - /*200*/ .word sys_ssetmask, sys_sigsuspend, compat_sys_newlstat, sys_uselib, compat_sys_old_readdir 63 - .word compat_sys_readahead, sys32_socketcall, sys_syslog, compat_sys_lookup_dcookie, compat_sys_fadvise64 64 - /*210*/ .word compat_sys_fadvise64_64, sys_tgkill, sys_waitpid, sys_swapoff, compat_sys_sysinfo 65 - .word compat_sys_ipc, sys32_sigreturn, sys_clone, sys_ioprio_get, compat_sys_adjtimex 66 - /*220*/ .word compat_sys_sigprocmask, sys_ni_syscall, sys_delete_module, sys_ni_syscall, sys_getpgid 67 - .word sys_bdflush, sys_sysfs, sys_nis_syscall, sys_setfsuid16, sys_setfsgid16 68 - /*230*/ .word compat_sys_select, compat_sys_time, sys_splice, compat_sys_stime, compat_sys_statfs64 69 - .word compat_sys_fstatfs64, sys_llseek, sys_mlock, sys_munlock, sys_mlockall 70 - /*240*/ .word sys_munlockall, sys_sched_setparam, sys_sched_getparam, sys_sched_setscheduler, sys_sched_getscheduler 71 - .word sys_sched_yield, sys_sched_get_priority_max, sys_sched_get_priority_min, compat_sys_sched_rr_get_interval, compat_sys_nanosleep 72 - /*250*/ .word sys_mremap, compat_sys_sysctl, sys_getsid, sys_fdatasync, sys_nis_syscall 73 - .word compat_sys_sync_file_range, compat_sys_clock_settime, compat_sys_clock_gettime, compat_sys_clock_getres, compat_sys_clock_nanosleep 74 - /*260*/ .word compat_sys_sched_getaffinity, compat_sys_sched_setaffinity, compat_sys_timer_settime, compat_sys_timer_gettime, sys_timer_getoverrun 75 - .word sys_timer_delete, compat_sys_timer_create, sys_ni_syscall, compat_sys_io_setup, sys_io_destroy 76 - /*270*/ .word compat_sys_io_submit, sys_io_cancel, compat_sys_io_getevents, compat_sys_mq_open, sys_mq_unlink 77 - .word compat_sys_mq_timedsend, compat_sys_mq_timedreceive, compat_sys_mq_notify, compat_sys_mq_getsetattr, compat_sys_waitid 78 - /*280*/ .word sys_tee, sys_add_key, sys_request_key, compat_sys_keyctl, compat_sys_openat 79 - .word sys_mkdirat, sys_mknodat, sys_fchownat, compat_sys_futimesat, compat_sys_fstatat64 80 - /*290*/ .word sys_unlinkat, sys_renameat, sys_linkat, sys_symlinkat, sys_readlinkat 81 - .word sys_fchmodat, sys_faccessat, compat_sys_pselect6, compat_sys_ppoll, sys_unshare 82 - /*300*/ .word compat_sys_set_robust_list, compat_sys_get_robust_list, compat_sys_migrate_pages, compat_sys_mbind, compat_sys_get_mempolicy 83 - .word compat_sys_set_mempolicy, compat_sys_kexec_load, compat_sys_move_pages, sys_getcpu, compat_sys_epoll_pwait 84 - /*310*/ .word compat_sys_utimensat, compat_sys_signalfd, sys_timerfd_create, sys_eventfd, compat_sys_fallocate 85 - .word compat_sys_timerfd_settime, compat_sys_timerfd_gettime, compat_sys_signalfd4, sys_eventfd2, sys_epoll_create1 86 - /*320*/ .word sys_dup3, sys_pipe2, sys_inotify_init1, sys_accept4, compat_sys_preadv 87 - .word compat_sys_pwritev, compat_sys_rt_tgsigqueueinfo, sys_perf_event_open, compat_sys_recvmmsg, sys_fanotify_init 88 - /*330*/ .word compat_sys_fanotify_mark, sys_prlimit64, sys_name_to_handle_at, compat_sys_open_by_handle_at, compat_sys_clock_adjtime 89 - .word sys_syncfs, compat_sys_sendmmsg, sys_setns, compat_sys_process_vm_readv, compat_sys_process_vm_writev 90 - /*340*/ .word sys_kern_features, sys_kcmp, sys_finit_module, sys_sched_setattr, sys_sched_getattr 91 - .word sys_renameat2, sys_seccomp, sys_getrandom, sys_memfd_create, sys_bpf 92 - /*350*/ .word sys32_execveat, sys_membarrier, sys_userfaultfd, sys_bind, sys_listen 93 - .word compat_sys_setsockopt, sys_mlock2, sys_copy_file_range, compat_sys_preadv2, compat_sys_pwritev2 94 - /*360*/ .word sys_statx, compat_sys_io_pgetevents 95 - 19 + #include <asm/syscall_table_c32.h> /* Compat syscalls */ 96 20 #endif /* CONFIG_COMPAT */ 97 - 98 - /* Now the 64-bit native Linux syscall table. */ 99 21 100 22 .align 4 101 23 .globl sys_call_table64, sys_call_table 102 24 sys_call_table64: 103 25 sys_call_table: 104 - /*0*/ .word sys_restart_syscall, sparc_exit, sys_fork, sys_read, sys_write 105 - /*5*/ .word sys_open, sys_close, sys_wait4, sys_creat, sys_link 106 - /*10*/ .word sys_unlink, sys_nis_syscall, sys_chdir, sys_chown, sys_mknod 107 - /*15*/ .word sys_chmod, sys_lchown, sys_brk, sys_nis_syscall, sys_lseek 108 - /*20*/ .word sys_getpid, sys_capget, sys_capset, sys_setuid, sys_getuid 109 - /*25*/ .word sys_vmsplice, sys_ptrace, sys_alarm, sys_sigaltstack, sys_nis_syscall 110 - /*30*/ .word sys_utime, sys_nis_syscall, sys_nis_syscall, sys_access, sys_nice 111 - .word sys_nis_syscall, sys_sync, sys_kill, sys_newstat, sys_sendfile64 112 - /*40*/ .word sys_newlstat, sys_dup, sys_sparc_pipe, sys_times, sys_nis_syscall 113 - .word sys_umount, sys_setgid, sys_getgid, sys_signal, sys_geteuid 114 - /*50*/ .word sys_getegid, sys_acct, sys_memory_ordering, sys_nis_syscall, sys_ioctl 115 - .word sys_reboot, sys_nis_syscall, sys_symlink, sys_readlink, sys64_execve 116 - /*60*/ .word sys_umask, sys_chroot, sys_newfstat, sys_fstat64, sys_getpagesize 117 - .word sys_msync, sys_vfork, sys_pread64, sys_pwrite64, sys_nis_syscall 118 - /*70*/ .word sys_nis_syscall, sys_mmap, sys_nis_syscall, sys_64_munmap, sys_mprotect 119 - .word sys_madvise, sys_vhangup, sys_nis_syscall, sys_mincore, sys_getgroups 120 - /*80*/ .word sys_setgroups, sys_getpgrp, sys_nis_syscall, sys_setitimer, sys_nis_syscall 121 - .word sys_swapon, sys_getitimer, sys_nis_syscall, sys_sethostname, sys_nis_syscall 122 - /*90*/ .word sys_dup2, sys_nis_syscall, sys_fcntl, sys_select, sys_nis_syscall 123 - .word sys_fsync, sys_setpriority, sys_socket, sys_connect, sys_accept 124 - /*100*/ .word sys_getpriority, sys_rt_sigreturn, sys_rt_sigaction, sys_rt_sigprocmask, sys_rt_sigpending 125 - .word sys_rt_sigtimedwait, sys_rt_sigqueueinfo, sys_rt_sigsuspend, sys_setresuid, sys_getresuid 126 - /*110*/ .word sys_setresgid, sys_getresgid, sys_nis_syscall, sys_recvmsg, sys_sendmsg 127 - .word sys_nis_syscall, sys_gettimeofday, sys_getrusage, sys_getsockopt, sys_getcwd 128 - /*120*/ .word sys_readv, sys_writev, sys_settimeofday, sys_fchown, sys_fchmod 129 - .word sys_recvfrom, sys_setreuid, sys_setregid, sys_rename, sys_truncate 130 - /*130*/ .word sys_ftruncate, sys_flock, sys_lstat64, sys_sendto, sys_shutdown 131 - .word sys_socketpair, sys_mkdir, sys_rmdir, sys_utimes, sys_stat64 132 - /*140*/ .word sys_sendfile64, sys_getpeername, sys_futex, sys_gettid, sys_getrlimit 133 - .word sys_setrlimit, sys_pivot_root, sys_prctl, sys_pciconfig_read, sys_pciconfig_write 134 - /*150*/ .word sys_getsockname, sys_inotify_init, sys_inotify_add_watch, sys_poll, sys_getdents64 135 - .word sys_nis_syscall, sys_inotify_rm_watch, sys_statfs, sys_fstatfs, sys_oldumount 136 - /*160*/ .word sys_sched_setaffinity, sys_sched_getaffinity, sys_getdomainname, sys_setdomainname, sys_utrap_install 137 - .word sys_quotactl, sys_set_tid_address, sys_mount, sys_ustat, sys_setxattr 138 - /*170*/ .word sys_lsetxattr, sys_fsetxattr, sys_getxattr, sys_lgetxattr, sys_getdents 139 - .word sys_setsid, sys_fchdir, sys_fgetxattr, sys_listxattr, sys_llistxattr 140 - /*180*/ .word sys_flistxattr, sys_removexattr, sys_lremovexattr, sys_nis_syscall, sys_ni_syscall 141 - .word sys_setpgid, sys_fremovexattr, sys_tkill, sparc_exit_group, sys_newuname 142 - /*190*/ .word sys_init_module, sys_sparc64_personality, sys_remap_file_pages, sys_epoll_create, sys_epoll_ctl 143 - .word sys_epoll_wait, sys_ioprio_set, sys_getppid, sys_nis_syscall, sys_sgetmask 144 - /*200*/ .word sys_ssetmask, sys_nis_syscall, sys_newlstat, sys_uselib, sys_nis_syscall 145 - .word sys_readahead, sys_socketcall, sys_syslog, sys_lookup_dcookie, sys_fadvise64 146 - /*210*/ .word sys_fadvise64_64, sys_tgkill, sys_waitpid, sys_swapoff, sys_sysinfo 147 - .word sys_sparc_ipc, sys_nis_syscall, sys_clone, sys_ioprio_get, sys_adjtimex 148 - /*220*/ .word sys_nis_syscall, sys_ni_syscall, sys_delete_module, sys_ni_syscall, sys_getpgid 149 - .word sys_bdflush, sys_sysfs, sys_nis_syscall, sys_setfsuid, sys_setfsgid 150 - /*230*/ .word sys_select, sys_nis_syscall, sys_splice, sys_stime, sys_statfs64 151 - .word sys_fstatfs64, sys_llseek, sys_mlock, sys_munlock, sys_mlockall 152 - /*240*/ .word sys_munlockall, sys_sched_setparam, sys_sched_getparam, sys_sched_setscheduler, sys_sched_getscheduler 153 - .word sys_sched_yield, sys_sched_get_priority_max, sys_sched_get_priority_min, sys_sched_rr_get_interval, sys_nanosleep 154 - /*250*/ .word sys_64_mremap, sys_sysctl, sys_getsid, sys_fdatasync, sys_nis_syscall 155 - .word sys_sync_file_range, sys_clock_settime, sys_clock_gettime, sys_clock_getres, sys_clock_nanosleep 156 - /*260*/ .word sys_sched_getaffinity, sys_sched_setaffinity, sys_timer_settime, sys_timer_gettime, sys_timer_getoverrun 157 - .word sys_timer_delete, sys_timer_create, sys_ni_syscall, sys_io_setup, sys_io_destroy 158 - /*270*/ .word sys_io_submit, sys_io_cancel, sys_io_getevents, sys_mq_open, sys_mq_unlink 159 - .word sys_mq_timedsend, sys_mq_timedreceive, sys_mq_notify, sys_mq_getsetattr, sys_waitid 160 - /*280*/ .word sys_tee, sys_add_key, sys_request_key, sys_keyctl, sys_openat 161 - .word sys_mkdirat, sys_mknodat, sys_fchownat, sys_futimesat, sys_fstatat64 162 - /*290*/ .word sys_unlinkat, sys_renameat, sys_linkat, sys_symlinkat, sys_readlinkat 163 - .word sys_fchmodat, sys_faccessat, sys_pselect6, sys_ppoll, sys_unshare 164 - /*300*/ .word sys_set_robust_list, sys_get_robust_list, sys_migrate_pages, sys_mbind, sys_get_mempolicy 165 - .word sys_set_mempolicy, sys_kexec_load, sys_move_pages, sys_getcpu, sys_epoll_pwait 166 - /*310*/ .word sys_utimensat, sys_signalfd, sys_timerfd_create, sys_eventfd, sys_fallocate 167 - .word sys_timerfd_settime, sys_timerfd_gettime, sys_signalfd4, sys_eventfd2, sys_epoll_create1 168 - /*320*/ .word sys_dup3, sys_pipe2, sys_inotify_init1, sys_accept4, sys_preadv 169 - .word sys_pwritev, sys_rt_tgsigqueueinfo, sys_perf_event_open, sys_recvmmsg, sys_fanotify_init 170 - /*330*/ .word sys_fanotify_mark, sys_prlimit64, sys_name_to_handle_at, sys_open_by_handle_at, sys_clock_adjtime 171 - .word sys_syncfs, sys_sendmmsg, sys_setns, sys_process_vm_readv, sys_process_vm_writev 172 - /*340*/ .word sys_kern_features, sys_kcmp, sys_finit_module, sys_sched_setattr, sys_sched_getattr 173 - .word sys_renameat2, sys_seccomp, sys_getrandom, sys_memfd_create, sys_bpf 174 - /*350*/ .word sys64_execveat, sys_membarrier, sys_userfaultfd, sys_bind, sys_listen 175 - .word sys_setsockopt, sys_mlock2, sys_copy_file_range, sys_preadv2, sys_pwritev2 176 - /*360*/ .word sys_statx, sys_io_pgetevents 26 + #include <asm/syscall_table_64.h> /* 64-bit native syscalls */ 27 + #undef __SYSCALL