mirror of
https://github.com/qemu/qemu.git
synced 2024-11-24 03:13:44 +08:00
linux-user, xtensa: add syscall table generation support
Copy syscall.tbl and syscallhdr.sh from linux/arch/xtensa/kernel/syscalls v5.5 Update syscallhdr.sh to generate QEMU syscall_nr.h Signed-off-by: Laurent Vivier <laurent@vivier.eu> Reviewed-by: Taylor Simpson <tsimpson@quicinc.com> Message-Id: <20200310103403.3284090-6-laurent@vivier.eu> Signed-off-by: Laurent Vivier <laurent@vivier.eu>
This commit is contained in:
parent
5b85cae955
commit
a4a9359253
3
configure
vendored
3
configure
vendored
@ -1889,7 +1889,7 @@ rm -f */config-devices.mak.d
|
||||
|
||||
# Remove syscall_nr.h to be sure they will be regenerated in the build
|
||||
# directory, not in the source directory
|
||||
for arch in alpha hppa m68k ; do
|
||||
for arch in alpha hppa m68k xtensa ; do
|
||||
# remove the file if it has been generated in the source directory
|
||||
rm -f "${source_path}/linux-user/${arch}/syscall_nr.h"
|
||||
# remove the dependency files
|
||||
@ -7916,6 +7916,7 @@ case "$target_name" in
|
||||
;;
|
||||
xtensa|xtensaeb)
|
||||
TARGET_ARCH=xtensa
|
||||
TARGET_SYSTBL_ABI=common
|
||||
bflt="yes"
|
||||
mttcg="yes"
|
||||
;;
|
||||
|
@ -12,3 +12,4 @@ obj-$(TARGET_AARCH64) += arm/semihost.o
|
||||
obj-$(TARGET_ALPHA) += alpha/
|
||||
obj-$(TARGET_HPPA) += hppa/
|
||||
obj-$(TARGET_M68K) += m68k/
|
||||
obj-$(TARGET_XTENSA) += xtensa/
|
||||
|
5
linux-user/xtensa/Makefile.objs
Normal file
5
linux-user/xtensa/Makefile.objs
Normal file
@ -0,0 +1,5 @@
|
||||
generated-files-y += linux-user/xtensa/syscall_nr.h
|
||||
|
||||
syshdr := $(SRC_PATH)/linux-user/xtensa/syscallhdr.sh
|
||||
%/syscall_nr.h: $(SRC_PATH)/linux-user/xtensa/syscall.tbl $(syshdr)
|
||||
$(call quiet-command, sh $(syshdr) $< $@ $(TARGET_SYSTBL_ABI),"GEN","$@")
|
408
linux-user/xtensa/syscall.tbl
Normal file
408
linux-user/xtensa/syscall.tbl
Normal file
@ -0,0 +1,408 @@
|
||||
# SPDX-License-Identifier: GPL-2.0 WITH Linux-syscall-note
|
||||
#
|
||||
# system call numbers and entry vectors for xtensa
|
||||
#
|
||||
# The format is:
|
||||
# <number> <abi> <name> <entry point>
|
||||
#
|
||||
# The <abi> is always "common" for this file
|
||||
#
|
||||
0 common spill sys_ni_syscall
|
||||
1 common xtensa sys_ni_syscall
|
||||
2 common available4 sys_ni_syscall
|
||||
3 common available5 sys_ni_syscall
|
||||
4 common available6 sys_ni_syscall
|
||||
5 common available7 sys_ni_syscall
|
||||
6 common available8 sys_ni_syscall
|
||||
7 common available9 sys_ni_syscall
|
||||
# File Operations
|
||||
8 common open sys_open
|
||||
9 common close sys_close
|
||||
10 common dup sys_dup
|
||||
11 common dup2 sys_dup2
|
||||
12 common read sys_read
|
||||
13 common write sys_write
|
||||
14 common select sys_select
|
||||
15 common lseek sys_lseek
|
||||
16 common poll sys_poll
|
||||
17 common _llseek sys_llseek
|
||||
18 common epoll_wait sys_epoll_wait
|
||||
19 common epoll_ctl sys_epoll_ctl
|
||||
20 common epoll_create sys_epoll_create
|
||||
21 common creat sys_creat
|
||||
22 common truncate sys_truncate
|
||||
23 common ftruncate sys_ftruncate
|
||||
24 common readv sys_readv
|
||||
25 common writev sys_writev
|
||||
26 common fsync sys_fsync
|
||||
27 common fdatasync sys_fdatasync
|
||||
28 common truncate64 sys_truncate64
|
||||
29 common ftruncate64 sys_ftruncate64
|
||||
30 common pread64 sys_pread64
|
||||
31 common pwrite64 sys_pwrite64
|
||||
32 common link sys_link
|
||||
33 common rename sys_rename
|
||||
34 common symlink sys_symlink
|
||||
35 common readlink sys_readlink
|
||||
36 common mknod sys_mknod
|
||||
37 common pipe sys_pipe
|
||||
38 common unlink sys_unlink
|
||||
39 common rmdir sys_rmdir
|
||||
40 common mkdir sys_mkdir
|
||||
41 common chdir sys_chdir
|
||||
42 common fchdir sys_fchdir
|
||||
43 common getcwd sys_getcwd
|
||||
44 common chmod sys_chmod
|
||||
45 common chown sys_chown
|
||||
46 common stat sys_newstat
|
||||
47 common stat64 sys_stat64
|
||||
48 common lchown sys_lchown
|
||||
49 common lstat sys_newlstat
|
||||
50 common lstat64 sys_lstat64
|
||||
51 common available51 sys_ni_syscall
|
||||
52 common fchmod sys_fchmod
|
||||
53 common fchown sys_fchown
|
||||
54 common fstat sys_newfstat
|
||||
55 common fstat64 sys_fstat64
|
||||
56 common flock sys_flock
|
||||
57 common access sys_access
|
||||
58 common umask sys_umask
|
||||
59 common getdents sys_getdents
|
||||
60 common getdents64 sys_getdents64
|
||||
61 common fcntl64 sys_fcntl64
|
||||
62 common fallocate sys_fallocate
|
||||
63 common fadvise64_64 xtensa_fadvise64_64
|
||||
64 common utime sys_utime32
|
||||
65 common utimes sys_utimes_time32
|
||||
66 common ioctl sys_ioctl
|
||||
67 common fcntl sys_fcntl
|
||||
68 common setxattr sys_setxattr
|
||||
69 common getxattr sys_getxattr
|
||||
70 common listxattr sys_listxattr
|
||||
71 common removexattr sys_removexattr
|
||||
72 common lsetxattr sys_lsetxattr
|
||||
73 common lgetxattr sys_lgetxattr
|
||||
74 common llistxattr sys_llistxattr
|
||||
75 common lremovexattr sys_lremovexattr
|
||||
76 common fsetxattr sys_fsetxattr
|
||||
77 common fgetxattr sys_fgetxattr
|
||||
78 common flistxattr sys_flistxattr
|
||||
79 common fremovexattr sys_fremovexattr
|
||||
# File Map / Shared Memory Operations
|
||||
80 common mmap2 sys_mmap_pgoff
|
||||
81 common munmap sys_munmap
|
||||
82 common mprotect sys_mprotect
|
||||
83 common brk sys_brk
|
||||
84 common mlock sys_mlock
|
||||
85 common munlock sys_munlock
|
||||
86 common mlockall sys_mlockall
|
||||
87 common munlockall sys_munlockall
|
||||
88 common mremap sys_mremap
|
||||
89 common msync sys_msync
|
||||
90 common mincore sys_mincore
|
||||
91 common madvise sys_madvise
|
||||
92 common shmget sys_shmget
|
||||
93 common shmat xtensa_shmat
|
||||
94 common shmctl sys_old_shmctl
|
||||
95 common shmdt sys_shmdt
|
||||
# Socket Operations
|
||||
96 common socket sys_socket
|
||||
97 common setsockopt sys_setsockopt
|
||||
98 common getsockopt sys_getsockopt
|
||||
99 common shutdown sys_shutdown
|
||||
100 common bind sys_bind
|
||||
101 common connect sys_connect
|
||||
102 common listen sys_listen
|
||||
103 common accept sys_accept
|
||||
104 common getsockname sys_getsockname
|
||||
105 common getpeername sys_getpeername
|
||||
106 common sendmsg sys_sendmsg
|
||||
107 common recvmsg sys_recvmsg
|
||||
108 common send sys_send
|
||||
109 common recv sys_recv
|
||||
110 common sendto sys_sendto
|
||||
111 common recvfrom sys_recvfrom
|
||||
112 common socketpair sys_socketpair
|
||||
113 common sendfile sys_sendfile
|
||||
114 common sendfile64 sys_sendfile64
|
||||
115 common sendmmsg sys_sendmmsg
|
||||
# Process Operations
|
||||
116 common clone sys_clone
|
||||
117 common execve sys_execve
|
||||
118 common exit sys_exit
|
||||
119 common exit_group sys_exit_group
|
||||
120 common getpid sys_getpid
|
||||
121 common wait4 sys_wait4
|
||||
122 common waitid sys_waitid
|
||||
123 common kill sys_kill
|
||||
124 common tkill sys_tkill
|
||||
125 common tgkill sys_tgkill
|
||||
126 common set_tid_address sys_set_tid_address
|
||||
127 common gettid sys_gettid
|
||||
128 common setsid sys_setsid
|
||||
129 common getsid sys_getsid
|
||||
130 common prctl sys_prctl
|
||||
131 common personality sys_personality
|
||||
132 common getpriority sys_getpriority
|
||||
133 common setpriority sys_setpriority
|
||||
134 common setitimer sys_setitimer
|
||||
135 common getitimer sys_getitimer
|
||||
136 common setuid sys_setuid
|
||||
137 common getuid sys_getuid
|
||||
138 common setgid sys_setgid
|
||||
139 common getgid sys_getgid
|
||||
140 common geteuid sys_geteuid
|
||||
141 common getegid sys_getegid
|
||||
142 common setreuid sys_setreuid
|
||||
143 common setregid sys_setregid
|
||||
144 common setresuid sys_setresuid
|
||||
145 common getresuid sys_getresuid
|
||||
146 common setresgid sys_setresgid
|
||||
147 common getresgid sys_getresgid
|
||||
148 common setpgid sys_setpgid
|
||||
149 common getpgid sys_getpgid
|
||||
150 common getppid sys_getppid
|
||||
151 common getpgrp sys_getpgrp
|
||||
# 152 was set_thread_area
|
||||
152 common reserved152 sys_ni_syscall
|
||||
# 153 was get_thread_area
|
||||
153 common reserved153 sys_ni_syscall
|
||||
154 common times sys_times
|
||||
155 common acct sys_acct
|
||||
156 common sched_setaffinity sys_sched_setaffinity
|
||||
157 common sched_getaffinity sys_sched_getaffinity
|
||||
158 common capget sys_capget
|
||||
159 common capset sys_capset
|
||||
160 common ptrace sys_ptrace
|
||||
161 common semtimedop sys_semtimedop_time32
|
||||
162 common semget sys_semget
|
||||
163 common semop sys_semop
|
||||
164 common semctl sys_old_semctl
|
||||
165 common available165 sys_ni_syscall
|
||||
166 common msgget sys_msgget
|
||||
167 common msgsnd sys_msgsnd
|
||||
168 common msgrcv sys_msgrcv
|
||||
169 common msgctl sys_old_msgctl
|
||||
170 common available170 sys_ni_syscall
|
||||
# File System
|
||||
171 common umount2 sys_umount
|
||||
172 common mount sys_mount
|
||||
173 common swapon sys_swapon
|
||||
174 common chroot sys_chroot
|
||||
175 common pivot_root sys_pivot_root
|
||||
176 common umount sys_oldumount
|
||||
177 common swapoff sys_swapoff
|
||||
178 common sync sys_sync
|
||||
179 common syncfs sys_syncfs
|
||||
180 common setfsuid sys_setfsuid
|
||||
181 common setfsgid sys_setfsgid
|
||||
182 common sysfs sys_sysfs
|
||||
183 common ustat sys_ustat
|
||||
184 common statfs sys_statfs
|
||||
185 common fstatfs sys_fstatfs
|
||||
186 common statfs64 sys_statfs64
|
||||
187 common fstatfs64 sys_fstatfs64
|
||||
# System
|
||||
188 common setrlimit sys_setrlimit
|
||||
189 common getrlimit sys_getrlimit
|
||||
190 common getrusage sys_getrusage
|
||||
191 common futex sys_futex_time32
|
||||
192 common gettimeofday sys_gettimeofday
|
||||
193 common settimeofday sys_settimeofday
|
||||
194 common adjtimex sys_adjtimex_time32
|
||||
195 common nanosleep sys_nanosleep_time32
|
||||
196 common getgroups sys_getgroups
|
||||
197 common setgroups sys_setgroups
|
||||
198 common sethostname sys_sethostname
|
||||
199 common setdomainname sys_setdomainname
|
||||
200 common syslog sys_syslog
|
||||
201 common vhangup sys_vhangup
|
||||
202 common uselib sys_uselib
|
||||
203 common reboot sys_reboot
|
||||
204 common quotactl sys_quotactl
|
||||
# 205 was old nfsservctl
|
||||
205 common nfsservctl sys_ni_syscall
|
||||
206 common _sysctl sys_sysctl
|
||||
207 common bdflush sys_bdflush
|
||||
208 common uname sys_newuname
|
||||
209 common sysinfo sys_sysinfo
|
||||
210 common init_module sys_init_module
|
||||
211 common delete_module sys_delete_module
|
||||
212 common sched_setparam sys_sched_setparam
|
||||
213 common sched_getparam sys_sched_getparam
|
||||
214 common sched_setscheduler sys_sched_setscheduler
|
||||
215 common sched_getscheduler sys_sched_getscheduler
|
||||
216 common sched_get_priority_max sys_sched_get_priority_max
|
||||
217 common sched_get_priority_min sys_sched_get_priority_min
|
||||
218 common sched_rr_get_interval sys_sched_rr_get_interval_time32
|
||||
219 common sched_yield sys_sched_yield
|
||||
222 common available222 sys_ni_syscall
|
||||
# Signal Handling
|
||||
223 common restart_syscall sys_restart_syscall
|
||||
224 common sigaltstack sys_sigaltstack
|
||||
225 common rt_sigreturn xtensa_rt_sigreturn
|
||||
226 common rt_sigaction sys_rt_sigaction
|
||||
227 common rt_sigprocmask sys_rt_sigprocmask
|
||||
228 common rt_sigpending sys_rt_sigpending
|
||||
229 common rt_sigtimedwait sys_rt_sigtimedwait_time32
|
||||
230 common rt_sigqueueinfo sys_rt_sigqueueinfo
|
||||
231 common rt_sigsuspend sys_rt_sigsuspend
|
||||
# Message
|
||||
232 common mq_open sys_mq_open
|
||||
233 common mq_unlink sys_mq_unlink
|
||||
234 common mq_timedsend sys_mq_timedsend_time32
|
||||
235 common mq_timedreceive sys_mq_timedreceive_time32
|
||||
236 common mq_notify sys_mq_notify
|
||||
237 common mq_getsetattr sys_mq_getsetattr
|
||||
238 common available238 sys_ni_syscall
|
||||
239 common io_setup sys_io_setup
|
||||
# IO
|
||||
240 common io_destroy sys_io_destroy
|
||||
241 common io_submit sys_io_submit
|
||||
242 common io_getevents sys_io_getevents_time32
|
||||
243 common io_cancel sys_io_cancel
|
||||
244 common clock_settime sys_clock_settime32
|
||||
245 common clock_gettime sys_clock_gettime32
|
||||
246 common clock_getres sys_clock_getres_time32
|
||||
247 common clock_nanosleep sys_clock_nanosleep_time32
|
||||
# Timer
|
||||
248 common timer_create sys_timer_create
|
||||
249 common timer_delete sys_timer_delete
|
||||
250 common timer_settime sys_timer_settime32
|
||||
251 common timer_gettime sys_timer_gettime32
|
||||
252 common timer_getoverrun sys_timer_getoverrun
|
||||
# System
|
||||
253 common reserved253 sys_ni_syscall
|
||||
254 common lookup_dcookie sys_lookup_dcookie
|
||||
255 common available255 sys_ni_syscall
|
||||
256 common add_key sys_add_key
|
||||
257 common request_key sys_request_key
|
||||
258 common keyctl sys_keyctl
|
||||
259 common available259 sys_ni_syscall
|
||||
260 common readahead sys_readahead
|
||||
261 common remap_file_pages sys_remap_file_pages
|
||||
262 common migrate_pages sys_migrate_pages
|
||||
263 common mbind sys_mbind
|
||||
264 common get_mempolicy sys_get_mempolicy
|
||||
265 common set_mempolicy sys_set_mempolicy
|
||||
266 common unshare sys_unshare
|
||||
267 common move_pages sys_move_pages
|
||||
268 common splice sys_splice
|
||||
269 common tee sys_tee
|
||||
270 common vmsplice sys_vmsplice
|
||||
271 common available271 sys_ni_syscall
|
||||
272 common pselect6 sys_pselect6_time32
|
||||
273 common ppoll sys_ppoll_time32
|
||||
274 common epoll_pwait sys_epoll_pwait
|
||||
275 common epoll_create1 sys_epoll_create1
|
||||
276 common inotify_init sys_inotify_init
|
||||
277 common inotify_add_watch sys_inotify_add_watch
|
||||
278 common inotify_rm_watch sys_inotify_rm_watch
|
||||
279 common inotify_init1 sys_inotify_init1
|
||||
280 common getcpu sys_getcpu
|
||||
281 common kexec_load sys_ni_syscall
|
||||
282 common ioprio_set sys_ioprio_set
|
||||
283 common ioprio_get sys_ioprio_get
|
||||
284 common set_robust_list sys_set_robust_list
|
||||
285 common get_robust_list sys_get_robust_list
|
||||
286 common available286 sys_ni_syscall
|
||||
287 common available287 sys_ni_syscall
|
||||
# Relative File Operations
|
||||
288 common openat sys_openat
|
||||
289 common mkdirat sys_mkdirat
|
||||
290 common mknodat sys_mknodat
|
||||
291 common unlinkat sys_unlinkat
|
||||
292 common renameat sys_renameat
|
||||
293 common linkat sys_linkat
|
||||
294 common symlinkat sys_symlinkat
|
||||
295 common readlinkat sys_readlinkat
|
||||
296 common utimensat sys_utimensat_time32
|
||||
297 common fchownat sys_fchownat
|
||||
298 common futimesat sys_futimesat_time32
|
||||
299 common fstatat64 sys_fstatat64
|
||||
300 common fchmodat sys_fchmodat
|
||||
301 common faccessat sys_faccessat
|
||||
302 common available302 sys_ni_syscall
|
||||
303 common available303 sys_ni_syscall
|
||||
304 common signalfd sys_signalfd
|
||||
# 305 was timerfd
|
||||
306 common eventfd sys_eventfd
|
||||
307 common recvmmsg sys_recvmmsg_time32
|
||||
308 common setns sys_setns
|
||||
309 common signalfd4 sys_signalfd4
|
||||
310 common dup3 sys_dup3
|
||||
311 common pipe2 sys_pipe2
|
||||
312 common timerfd_create sys_timerfd_create
|
||||
313 common timerfd_settime sys_timerfd_settime32
|
||||
314 common timerfd_gettime sys_timerfd_gettime32
|
||||
315 common available315 sys_ni_syscall
|
||||
316 common eventfd2 sys_eventfd2
|
||||
317 common preadv sys_preadv
|
||||
318 common pwritev sys_pwritev
|
||||
319 common available319 sys_ni_syscall
|
||||
320 common fanotify_init sys_fanotify_init
|
||||
321 common fanotify_mark sys_fanotify_mark
|
||||
322 common process_vm_readv sys_process_vm_readv
|
||||
323 common process_vm_writev sys_process_vm_writev
|
||||
324 common name_to_handle_at sys_name_to_handle_at
|
||||
325 common open_by_handle_at sys_open_by_handle_at
|
||||
326 common sync_file_range2 sys_sync_file_range2
|
||||
327 common perf_event_open sys_perf_event_open
|
||||
328 common rt_tgsigqueueinfo sys_rt_tgsigqueueinfo
|
||||
329 common clock_adjtime sys_clock_adjtime32
|
||||
330 common prlimit64 sys_prlimit64
|
||||
331 common kcmp sys_kcmp
|
||||
332 common finit_module sys_finit_module
|
||||
333 common accept4 sys_accept4
|
||||
334 common sched_setattr sys_sched_setattr
|
||||
335 common sched_getattr sys_sched_getattr
|
||||
336 common renameat2 sys_renameat2
|
||||
337 common seccomp sys_seccomp
|
||||
338 common getrandom sys_getrandom
|
||||
339 common memfd_create sys_memfd_create
|
||||
340 common bpf sys_bpf
|
||||
341 common execveat sys_execveat
|
||||
342 common userfaultfd sys_userfaultfd
|
||||
343 common membarrier sys_membarrier
|
||||
344 common mlock2 sys_mlock2
|
||||
345 common copy_file_range sys_copy_file_range
|
||||
346 common preadv2 sys_preadv2
|
||||
347 common pwritev2 sys_pwritev2
|
||||
348 common pkey_mprotect sys_pkey_mprotect
|
||||
349 common pkey_alloc sys_pkey_alloc
|
||||
350 common pkey_free sys_pkey_free
|
||||
351 common statx sys_statx
|
||||
352 common rseq sys_rseq
|
||||
# 353 through 402 are unassigned to sync up with generic numbers
|
||||
403 common clock_gettime64 sys_clock_gettime
|
||||
404 common clock_settime64 sys_clock_settime
|
||||
405 common clock_adjtime64 sys_clock_adjtime
|
||||
406 common clock_getres_time64 sys_clock_getres
|
||||
407 common clock_nanosleep_time64 sys_clock_nanosleep
|
||||
408 common timer_gettime64 sys_timer_gettime
|
||||
409 common timer_settime64 sys_timer_settime
|
||||
410 common timerfd_gettime64 sys_timerfd_gettime
|
||||
411 common timerfd_settime64 sys_timerfd_settime
|
||||
412 common utimensat_time64 sys_utimensat
|
||||
413 common pselect6_time64 sys_pselect6
|
||||
414 common ppoll_time64 sys_ppoll
|
||||
416 common io_pgetevents_time64 sys_io_pgetevents
|
||||
417 common recvmmsg_time64 sys_recvmmsg
|
||||
418 common mq_timedsend_time64 sys_mq_timedsend
|
||||
419 common mq_timedreceive_time64 sys_mq_timedreceive
|
||||
420 common semtimedop_time64 sys_semtimedop
|
||||
421 common rt_sigtimedwait_time64 sys_rt_sigtimedwait
|
||||
422 common futex_time64 sys_futex
|
||||
423 common sched_rr_get_interval_time64 sys_sched_rr_get_interval
|
||||
424 common pidfd_send_signal sys_pidfd_send_signal
|
||||
425 common io_uring_setup sys_io_uring_setup
|
||||
426 common io_uring_enter sys_io_uring_enter
|
||||
427 common io_uring_register sys_io_uring_register
|
||||
428 common open_tree sys_open_tree
|
||||
429 common move_mount sys_move_mount
|
||||
430 common fsopen sys_fsopen
|
||||
431 common fsconfig sys_fsconfig
|
||||
432 common fsmount sys_fsmount
|
||||
433 common fspick sys_fspick
|
||||
434 common pidfd_open sys_pidfd_open
|
||||
435 common clone3 sys_clone3
|
@ -1,469 +0,0 @@
|
||||
/*
|
||||
* include/asm-xtensa/unistd.h
|
||||
*
|
||||
* This file is subject to the terms and conditions of the GNU General Public
|
||||
* License. See the file "COPYING" in the main directory of this archive
|
||||
* for more details.
|
||||
*
|
||||
* Copyright (C) 2001 - 2009 Tensilica Inc.
|
||||
*/
|
||||
|
||||
#ifndef XTENSA_SYSCALL_NR_H
|
||||
#define XTENSA_SYSCALL_NR_H
|
||||
|
||||
#define TARGET_NR_spill 0
|
||||
#define TARGET_NR_xtensa 1
|
||||
#define TARGET_NR_available4 2
|
||||
#define TARGET_NR_available5 3
|
||||
#define TARGET_NR_available6 4
|
||||
#define TARGET_NR_available7 5
|
||||
#define TARGET_NR_available8 6
|
||||
#define TARGET_NR_available9 7
|
||||
|
||||
/* File Operations */
|
||||
|
||||
#define TARGET_NR_open 8
|
||||
#define TARGET_NR_close 9
|
||||
#define TARGET_NR_dup 10
|
||||
#define TARGET_NR_dup2 11
|
||||
#define TARGET_NR_read 12
|
||||
#define TARGET_NR_write 13
|
||||
#define TARGET_NR_select 14
|
||||
#define TARGET_NR_lseek 15
|
||||
#define TARGET_NR_poll 16
|
||||
#define TARGET_NR__llseek 17
|
||||
#define TARGET_NR_epoll_wait 18
|
||||
#define TARGET_NR_epoll_ctl 19
|
||||
#define TARGET_NR_epoll_create 20
|
||||
#define TARGET_NR_creat 21
|
||||
#define TARGET_NR_truncate 22
|
||||
#define TARGET_NR_ftruncate 23
|
||||
#define TARGET_NR_readv 24
|
||||
#define TARGET_NR_writev 25
|
||||
#define TARGET_NR_fsync 26
|
||||
#define TARGET_NR_fdatasync 27
|
||||
#define TARGET_NR_truncate64 28
|
||||
#define TARGET_NR_ftruncate64 29
|
||||
#define TARGET_NR_pread64 30
|
||||
#define TARGET_NR_pwrite64 31
|
||||
|
||||
#define TARGET_NR_link 32
|
||||
#define TARGET_NR_rename 33
|
||||
#define TARGET_NR_symlink 34
|
||||
#define TARGET_NR_readlink 35
|
||||
#define TARGET_NR_mknod 36
|
||||
#define TARGET_NR_pipe 37
|
||||
#define TARGET_NR_unlink 38
|
||||
#define TARGET_NR_rmdir 39
|
||||
|
||||
#define TARGET_NR_mkdir 40
|
||||
#define TARGET_NR_chdir 41
|
||||
#define TARGET_NR_fchdir 42
|
||||
#define TARGET_NR_getcwd 43
|
||||
|
||||
#define TARGET_NR_chmod 44
|
||||
#define TARGET_NR_chown 45
|
||||
#define TARGET_NR_stat 46
|
||||
#define TARGET_NR_stat64 47
|
||||
|
||||
#define TARGET_NR_lchown 48
|
||||
#define TARGET_NR_lstat 49
|
||||
#define TARGET_NR_lstat64 50
|
||||
#define TARGET_NR_available51 51
|
||||
|
||||
#define TARGET_NR_fchmod 52
|
||||
#define TARGET_NR_fchown 53
|
||||
#define TARGET_NR_fstat 54
|
||||
#define TARGET_NR_fstat64 55
|
||||
|
||||
#define TARGET_NR_flock 56
|
||||
#define TARGET_NR_access 57
|
||||
#define TARGET_NR_umask 58
|
||||
#define TARGET_NR_getdents 59
|
||||
#define TARGET_NR_getdents64 60
|
||||
#define TARGET_NR_fcntl64 61
|
||||
#define TARGET_NR_fallocate 62
|
||||
#define TARGET_NR_fadvise64_64 63
|
||||
#define TARGET_NR_utime 64 /* glibc 2.3.3 ?? */
|
||||
#define TARGET_NR_utimes 65
|
||||
#define TARGET_NR_ioctl 66
|
||||
#define TARGET_NR_fcntl 67
|
||||
|
||||
#define TARGET_NR_setxattr 68
|
||||
#define TARGET_NR_getxattr 69
|
||||
#define TARGET_NR_listxattr 70
|
||||
#define TARGET_NR_removexattr 71
|
||||
#define TARGET_NR_lsetxattr 72
|
||||
#define TARGET_NR_lgetxattr 73
|
||||
#define TARGET_NR_llistxattr 74
|
||||
#define TARGET_NR_lremovexattr 75
|
||||
#define TARGET_NR_fsetxattr 76
|
||||
#define TARGET_NR_fgetxattr 77
|
||||
#define TARGET_NR_flistxattr 78
|
||||
#define TARGET_NR_fremovexattr 79
|
||||
|
||||
/* File Map / Shared Memory Operations */
|
||||
|
||||
#define TARGET_NR_mmap2 80
|
||||
#define TARGET_NR_munmap 81
|
||||
#define TARGET_NR_mprotect 82
|
||||
#define TARGET_NR_brk 83
|
||||
#define TARGET_NR_mlock 84
|
||||
#define TARGET_NR_munlock 85
|
||||
#define TARGET_NR_mlockall 86
|
||||
#define TARGET_NR_munlockall 87
|
||||
#define TARGET_NR_mremap 88
|
||||
#define TARGET_NR_msync 89
|
||||
#define TARGET_NR_mincore 90
|
||||
#define TARGET_NR_madvise 91
|
||||
#define TARGET_NR_shmget 92
|
||||
#define TARGET_NR_shmat 93
|
||||
#define TARGET_NR_shmctl 94
|
||||
#define TARGET_NR_shmdt 95
|
||||
|
||||
/* Socket Operations */
|
||||
|
||||
#define TARGET_NR_socket 96
|
||||
#define TARGET_NR_setsockopt 97
|
||||
#define TARGET_NR_getsockopt 98
|
||||
#define TARGET_NR_shutdown 99
|
||||
|
||||
#define TARGET_NR_bind 100
|
||||
#define TARGET_NR_connect 101
|
||||
#define TARGET_NR_listen 102
|
||||
#define TARGET_NR_accept 103
|
||||
|
||||
#define TARGET_NR_getsockname 104
|
||||
#define TARGET_NR_getpeername 105
|
||||
#define TARGET_NR_sendmsg 106
|
||||
#define TARGET_NR_recvmsg 107
|
||||
#define TARGET_NR_send 108
|
||||
#define TARGET_NR_recv 109
|
||||
#define TARGET_NR_sendto 110
|
||||
#define TARGET_NR_recvfrom 111
|
||||
|
||||
#define TARGET_NR_socketpair 112
|
||||
#define TARGET_NR_sendfile 113
|
||||
#define TARGET_NR_sendfile64 114
|
||||
#define TARGET_NR_sendmmsg 115
|
||||
|
||||
/* Process Operations */
|
||||
|
||||
#define TARGET_NR_clone 116
|
||||
#define TARGET_NR_execve 117
|
||||
#define TARGET_NR_exit 118
|
||||
#define TARGET_NR_exit_group 119
|
||||
#define TARGET_NR_getpid 120
|
||||
#define TARGET_NR_wait4 121
|
||||
#define TARGET_NR_waitid 122
|
||||
#define TARGET_NR_kill 123
|
||||
#define TARGET_NR_tkill 124
|
||||
#define TARGET_NR_tgkill 125
|
||||
#define TARGET_NR_set_tid_address 126
|
||||
#define TARGET_NR_gettid 127
|
||||
#define TARGET_NR_setsid 128
|
||||
#define TARGET_NR_getsid 129
|
||||
#define TARGET_NR_prctl 130
|
||||
#define TARGET_NR_personality 131
|
||||
#define TARGET_NR_getpriority 132
|
||||
#define TARGET_NR_setpriority 133
|
||||
#define TARGET_NR_setitimer 134
|
||||
#define TARGET_NR_getitimer 135
|
||||
#define TARGET_NR_setuid 136
|
||||
#define TARGET_NR_getuid 137
|
||||
#define TARGET_NR_setgid 138
|
||||
#define TARGET_NR_getgid 139
|
||||
#define TARGET_NR_geteuid 140
|
||||
#define TARGET_NR_getegid 141
|
||||
#define TARGET_NR_setreuid 142
|
||||
#define TARGET_NR_setregid 143
|
||||
#define TARGET_NR_setresuid 144
|
||||
#define TARGET_NR_getresuid 145
|
||||
#define TARGET_NR_setresgid 146
|
||||
#define TARGET_NR_getresgid 147
|
||||
#define TARGET_NR_setpgid 148
|
||||
#define TARGET_NR_getpgid 149
|
||||
#define TARGET_NR_getppid 150
|
||||
#define TARGET_NR_getpgrp 151
|
||||
|
||||
#define TARGET_NR_reserved152 152 /* set_thread_area */
|
||||
#define TARGET_NR_reserved153 153 /* get_thread_area */
|
||||
#define TARGET_NR_times 154
|
||||
#define TARGET_NR_acct 155
|
||||
#define TARGET_NR_sched_setaffinity 156
|
||||
#define TARGET_NR_sched_getaffinity 157
|
||||
#define TARGET_NR_capget 158
|
||||
#define TARGET_NR_capset 159
|
||||
#define TARGET_NR_ptrace 160
|
||||
#define TARGET_NR_semtimedop 161
|
||||
#define TARGET_NR_semget 162
|
||||
#define TARGET_NR_semop 163
|
||||
#define TARGET_NR_semctl 164
|
||||
#define TARGET_NR_available165 165
|
||||
#define TARGET_NR_msgget 166
|
||||
#define TARGET_NR_msgsnd 167
|
||||
#define TARGET_NR_msgrcv 168
|
||||
#define TARGET_NR_msgctl 169
|
||||
#define TARGET_NR_available170 170
|
||||
|
||||
/* File System */
|
||||
|
||||
#define TARGET_NR_umount2 171
|
||||
#define TARGET_NR_mount 172
|
||||
#define TARGET_NR_swapon 173
|
||||
#define TARGET_NR_chroot 174
|
||||
#define TARGET_NR_pivot_root 175
|
||||
#define TARGET_NR_umount 176
|
||||
#define TARGET_NR_swapoff 177
|
||||
#define TARGET_NR_sync 178
|
||||
#define TARGET_NR_syncfs 179
|
||||
#define TARGET_NR_setfsuid 180
|
||||
#define TARGET_NR_setfsgid 181
|
||||
#define TARGET_NR_sysfs 182
|
||||
#define TARGET_NR_ustat 183
|
||||
#define TARGET_NR_statfs 184
|
||||
#define TARGET_NR_fstatfs 185
|
||||
#define TARGET_NR_statfs64 186
|
||||
#define TARGET_NR_fstatfs64 187
|
||||
|
||||
/* System */
|
||||
|
||||
#define TARGET_NR_setrlimit 188
|
||||
#define TARGET_NR_getrlimit 189
|
||||
#define TARGET_NR_getrusage 190
|
||||
#define TARGET_NR_futex 191
|
||||
#define TARGET_NR_gettimeofday 192
|
||||
#define TARGET_NR_settimeofday 193
|
||||
#define TARGET_NR_adjtimex 194
|
||||
#define TARGET_NR_nanosleep 195
|
||||
#define TARGET_NR_getgroups 196
|
||||
#define TARGET_NR_setgroups 197
|
||||
#define TARGET_NR_sethostname 198
|
||||
#define TARGET_NR_setdomainname 199
|
||||
#define TARGET_NR_syslog 200
|
||||
#define TARGET_NR_vhangup 201
|
||||
#define TARGET_NR_uselib 202
|
||||
#define TARGET_NR_reboot 203
|
||||
#define TARGET_NR_quotactl 204
|
||||
#define TARGET_NR_nfsservctl 205
|
||||
#define TARGET_NR__sysctl 206
|
||||
#define TARGET_NR_bdflush 207
|
||||
#define TARGET_NR_uname 208
|
||||
#define TARGET_NR_sysinfo 209
|
||||
#define TARGET_NR_init_module 210
|
||||
#define TARGET_NR_delete_module 211
|
||||
|
||||
#define TARGET_NR_sched_setparam 212
|
||||
#define TARGET_NR_sched_getparam 213
|
||||
#define TARGET_NR_sched_setscheduler 214
|
||||
#define TARGET_NR_sched_getscheduler 215
|
||||
#define TARGET_NR_sched_get_priority_max 216
|
||||
#define TARGET_NR_sched_get_priority_min 217
|
||||
#define TARGET_NR_sched_rr_get_interval 218
|
||||
#define TARGET_NR_sched_yield 219
|
||||
#define TARGET_NR_available222 222
|
||||
|
||||
/* Signal Handling */
|
||||
|
||||
#define TARGET_NR_restart_syscall 223
|
||||
#define TARGET_NR_sigaltstack 224
|
||||
#define TARGET_NR_rt_sigreturn 225
|
||||
#define TARGET_NR_rt_sigaction 226
|
||||
#define TARGET_NR_rt_sigprocmask 227
|
||||
#define TARGET_NR_rt_sigpending 228
|
||||
#define TARGET_NR_rt_sigtimedwait 229
|
||||
#define TARGET_NR_rt_sigqueueinfo 230
|
||||
#define TARGET_NR_rt_sigsuspend 231
|
||||
|
||||
/* Message */
|
||||
|
||||
#define TARGET_NR_mq_open 232
|
||||
#define TARGET_NR_mq_unlink 233
|
||||
#define TARGET_NR_mq_timedsend 234
|
||||
#define TARGET_NR_mq_timedreceive 235
|
||||
#define TARGET_NR_mq_notify 236
|
||||
#define TARGET_NR_mq_getsetattr 237
|
||||
#define TARGET_NR_available238 238
|
||||
|
||||
/* IO */
|
||||
|
||||
#define TARGET_NR_io_setup 239
|
||||
#define TARGET_NR_io_destroy 240
|
||||
#define TARGET_NR_io_submit 241
|
||||
#define TARGET_NR_io_getevents 242
|
||||
#define TARGET_NR_io_cancel 243
|
||||
#define TARGET_NR_clock_settime 244
|
||||
#define TARGET_NR_clock_gettime 245
|
||||
#define TARGET_NR_clock_getres 246
|
||||
#define TARGET_NR_clock_nanosleep 247
|
||||
|
||||
/* Timer */
|
||||
|
||||
#define TARGET_NR_timer_create 248
|
||||
#define TARGET_NR_timer_delete 249
|
||||
#define TARGET_NR_timer_settime 250
|
||||
#define TARGET_NR_timer_gettime 251
|
||||
#define TARGET_NR_timer_getoverrun 252
|
||||
|
||||
/* System */
|
||||
|
||||
#define TARGET_NR_reserved253 253
|
||||
#define TARGET_NR_lookup_dcookie 254
|
||||
#define TARGET_NR_available255 255
|
||||
#define TARGET_NR_add_key 256
|
||||
#define TARGET_NR_request_key 257
|
||||
#define TARGET_NR_keyctl 258
|
||||
#define TARGET_NR_available259 259
|
||||
|
||||
|
||||
#define TARGET_NR_readahead 260
|
||||
#define TARGET_NR_remap_file_pages 261
|
||||
#define TARGET_NR_migrate_pages 262
|
||||
#define TARGET_NR_mbind 263
|
||||
#define TARGET_NR_get_mempolicy 264
|
||||
#define TARGET_NR_set_mempolicy 265
|
||||
#define TARGET_NR_unshare 266
|
||||
#define TARGET_NR_move_pages 267
|
||||
#define TARGET_NR_splice 268
|
||||
#define TARGET_NR_tee 269
|
||||
#define TARGET_NR_vmsplice 270
|
||||
#define TARGET_NR_available271 271
|
||||
|
||||
#define TARGET_NR_pselect6 272
|
||||
#define TARGET_NR_ppoll 273
|
||||
#define TARGET_NR_epoll_pwait 274
|
||||
#define TARGET_NR_epoll_create1 275
|
||||
|
||||
#define TARGET_NR_inotify_init 276
|
||||
#define TARGET_NR_inotify_add_watch 277
|
||||
#define TARGET_NR_inotify_rm_watch 278
|
||||
#define TARGET_NR_inotify_init1 279
|
||||
|
||||
#define TARGET_NR_getcpu 280
|
||||
#define TARGET_NR_kexec_load 281
|
||||
|
||||
#define TARGET_NR_ioprio_set 282
|
||||
#define TARGET_NR_ioprio_get 283
|
||||
|
||||
#define TARGET_NR_set_robust_list 284
|
||||
#define TARGET_NR_get_robust_list 285
|
||||
#define TARGET_NR_available286 286
|
||||
#define TARGET_NR_available287 287
|
||||
|
||||
/* Relative File Operations */
|
||||
|
||||
#define TARGET_NR_openat 288
|
||||
#define TARGET_NR_mkdirat 289
|
||||
#define TARGET_NR_mknodat 290
|
||||
#define TARGET_NR_unlinkat 291
|
||||
#define TARGET_NR_renameat 292
|
||||
#define TARGET_NR_linkat 293
|
||||
#define TARGET_NR_symlinkat 294
|
||||
#define TARGET_NR_readlinkat 295
|
||||
#define TARGET_NR_utimensat 296
|
||||
#define TARGET_NR_fchownat 297
|
||||
#define TARGET_NR_futimesat 298
|
||||
#define TARGET_NR_fstatat64 299
|
||||
#define TARGET_NR_fchmodat 300
|
||||
#define TARGET_NR_faccessat 301
|
||||
#define TARGET_NR_available302 302
|
||||
#define TARGET_NR_available303 303
|
||||
|
||||
#define TARGET_NR_signalfd 304
|
||||
/* 305 was TARGET_NR_timerfd */
|
||||
#define TARGET_NR_eventfd 306
|
||||
#define TARGET_NR_recvmmsg 307
|
||||
|
||||
#define TARGET_NR_setns 308
|
||||
#define TARGET_NR_signalfd4 309
|
||||
#define TARGET_NR_dup3 310
|
||||
#define TARGET_NR_pipe2 311
|
||||
|
||||
#define TARGET_NR_timerfd_create 312
|
||||
#define TARGET_NR_timerfd_settime 313
|
||||
#define TARGET_NR_timerfd_gettime 314
|
||||
#define TARGET_NR_available315 315
|
||||
|
||||
#define TARGET_NR_eventfd2 316
|
||||
#define TARGET_NR_preadv 317
|
||||
#define TARGET_NR_pwritev 318
|
||||
#define TARGET_NR_available319 319
|
||||
|
||||
#define TARGET_NR_fanotify_init 320
|
||||
#define TARGET_NR_fanotify_mark 321
|
||||
#define TARGET_NR_process_vm_readv 322
|
||||
#define TARGET_NR_process_vm_writev 323
|
||||
|
||||
#define TARGET_NR_name_to_handle_at 324
|
||||
#define TARGET_NR_open_by_handle_at 325
|
||||
#define TARGET_NR_sync_file_range2 326
|
||||
#define TARGET_NR_perf_event_open 327
|
||||
|
||||
#define TARGET_NR_rt_tgsigqueueinfo 328
|
||||
#define TARGET_NR_clock_adjtime 329
|
||||
#define TARGET_NR_prlimit64 330
|
||||
#define TARGET_NR_kcmp 331
|
||||
|
||||
#define TARGET_NR_finit_module 332
|
||||
|
||||
#define TARGET_NR_accept4 333
|
||||
|
||||
#define TARGET_NR_sched_setattr 334
|
||||
#define TARGET_NR_sched_getattr 335
|
||||
|
||||
#define TARGET_NR_renameat2 336
|
||||
|
||||
#define TARGET_NR_seccomp 337
|
||||
#define TARGET_NR_getrandom 338
|
||||
#define TARGET_NR_memfd_create 339
|
||||
#define TARGET_NR_bpf 340
|
||||
#define TARGET_NR_execveat 341
|
||||
|
||||
#define TARGET_NR_userfaultfd 342
|
||||
#define TARGET_NR_membarrier 343
|
||||
#define TARGET_NR_mlock2 344
|
||||
#define TARGET_NR_copy_file_range 345
|
||||
#define TARGET_NR_preadv2 346
|
||||
#define TARGET_NR_pwritev2 347
|
||||
|
||||
#define TARGET_NR_pkey_mprotect 348
|
||||
#define TARGET_NR_pkey_alloc 349
|
||||
#define TARGET_NR_pkey_free 350
|
||||
|
||||
#define TARGET_NR_statx 351
|
||||
#define TARGET_NR_rseq 352
|
||||
/* 353 through 402 are unassigned to sync up with generic numbers */
|
||||
#define TARGET_NR_clock_gettime64 403
|
||||
#define TARGET_NR_clock_settime64 404
|
||||
#define TARGET_NR_clock_adjtime64 405
|
||||
#define TARGET_NR_clock_getres_time64 406
|
||||
#define TARGET_NR_clock_nanosleep_time64 407
|
||||
#define TARGET_NR_timer_gettime64 408
|
||||
#define TARGET_NR_timer_settime64 409
|
||||
#define TARGET_NR_timerfd_gettime64 410
|
||||
#define TARGET_NR_timerfd_settime64 411
|
||||
#define TARGET_NR_utimensat_time64 412
|
||||
#define TARGET_NR_pselect6_time64 413
|
||||
#define TARGET_NR_ppoll_time64 414
|
||||
#define TARGET_NR_io_pgetevents_time64 416
|
||||
#define TARGET_NR_recvmmsg_time64 417
|
||||
#define TARGET_NR_mq_timedsend_time64 418
|
||||
#define TARGET_NR_mq_timedreceive_time64 419
|
||||
#define TARGET_NR_semtimedop_time64 420
|
||||
#define TARGET_NR_rt_sigtimedwait_time64 421
|
||||
#define TARGET_NR_futex_time64 422
|
||||
#define TARGET_NR_sched_rr_get_interval_time64 423
|
||||
#define TARGET_NR_pidfd_send_signal 424
|
||||
#define TARGET_NR_io_uring_setup 425
|
||||
#define TARGET_NR_io_uring_enter 426
|
||||
#define TARGET_NR_io_uring_register 427
|
||||
#define TARGET_NR_open_tree 428
|
||||
#define TARGET_NR_move_mount 429
|
||||
#define TARGET_NR_fsopen 430
|
||||
#define TARGET_NR_fsconfig 431
|
||||
#define TARGET_NR_fsmount 432
|
||||
#define TARGET_NR_fspick 433
|
||||
#define TARGET_NR_pidfd_open 434
|
||||
#define TARGET_NR_clone3 435
|
||||
|
||||
#endif /* XTENSA_SYSCALL_NR_H */
|
32
linux-user/xtensa/syscallhdr.sh
Normal file
32
linux-user/xtensa/syscallhdr.sh
Normal file
@ -0,0 +1,32 @@
|
||||
#!/bin/sh
|
||||
# SPDX-License-Identifier: GPL-2.0
|
||||
|
||||
in="$1"
|
||||
out="$2"
|
||||
my_abis=`echo "($3)" | tr ',' '|'`
|
||||
prefix="$4"
|
||||
offset="$5"
|
||||
|
||||
fileguard=LINUX_USER_XTENSA_`basename "$out" | sed \
|
||||
-e 'y/abcdefghijklmnopqrstuvwxyz/ABCDEFGHIJKLMNOPQRSTUVWXYZ/' \
|
||||
-e 's/[^A-Z0-9_]/_/g' -e 's/__/_/g'`
|
||||
grep -E "^[0-9A-Fa-fXx]+[[:space:]]+${my_abis}" "$in" | sort -n | (
|
||||
printf "#ifndef %s\n" "${fileguard}"
|
||||
printf "#define %s\n" "${fileguard}"
|
||||
printf "\n"
|
||||
|
||||
nxt=0
|
||||
while read nr abi name entry ; do
|
||||
if [ -z "$offset" ]; then
|
||||
printf "#define TARGET_NR_%s%s\t%s\n" \
|
||||
"${prefix}" "${name}" "${nr}"
|
||||
else
|
||||
printf "#define TARGET_NR_%s%s\t(%s + %s)\n" \
|
||||
"${prefix}" "${name}" "${offset}" "${nr}"
|
||||
fi
|
||||
nxt=$((nr+1))
|
||||
done
|
||||
|
||||
printf "\n"
|
||||
printf "#endif /* %s */" "${fileguard}"
|
||||
) > "$out"
|
Loading…
Reference in New Issue
Block a user