2 * Copyright (c) 2013-2019 The strace developers.
5 * SPDX-License-Identifier: LGPL-2.1-or-later
9 #if defined LINUX_MIPSO32
10 /* For an O32 strace, decode the o32 syscalls. */
11 # define SYS_syscall_subcall 4000
12 [BASE_NR + 0] = { MA, TSD, SEN(syscall), "syscall" }, /* start of Linux o32 */
13 [BASE_NR + 1] = { 1, TP|SE, SEN(exit), "exit" },
14 [BASE_NR + 2] = { 0, TP, SEN(fork), "fork" },
15 [BASE_NR + 3] = { 3, TD, SEN(read), "read" },
16 [BASE_NR + 4] = { 3, TD, SEN(write), "write" },
17 [BASE_NR + 5] = { 3, TD|TF, SEN(open), "open" },
18 [BASE_NR + 6] = { 1, TD, SEN(close), "close" },
19 [BASE_NR + 7] = { 3, TP, SEN(waitpid), "waitpid" },
20 [BASE_NR + 8] = { 2, TD|TF, SEN(creat), "creat" },
21 [BASE_NR + 9] = { 2, TF, SEN(link), "link" },
22 [BASE_NR + 10] = { 1, TF, SEN(unlink), "unlink" },
23 [BASE_NR + 11] = { 3, TF|TP|TSD|SE|SI, SEN(execve), "execve" },
24 [BASE_NR + 12] = { 1, TF, SEN(chdir), "chdir" },
25 [BASE_NR + 13] = { 1, 0, SEN(time), "time" },
26 [BASE_NR + 14] = { 3, TF, SEN(mknod), "mknod" },
27 [BASE_NR + 15] = { 2, TF, SEN(chmod), "chmod" },
28 [BASE_NR + 16] = { 3, TF, SEN(chown), "lchown" },
29 [BASE_NR + 17] = { 0, TM, SEN(break), "break" },
30 [BASE_NR + 18] = { 2, TF|TST|TSTA, SEN(oldstat), "oldstat" },
31 [BASE_NR + 19] = { 3, TD, SEN(lseek), "lseek" },
32 [BASE_NR + 20] = { 0, PU|NF, SEN(getpid), "getpid" },
33 [BASE_NR + 21] = { 5, TF, SEN(mount), "mount" },
34 [BASE_NR + 22] = { 1, TF, SEN(umount), "umount" },
35 [BASE_NR + 23] = { 1, 0, SEN(setuid), "setuid" },
36 [BASE_NR + 24] = { 0, PU|NF, SEN(getuid), "getuid" },
37 [BASE_NR + 25] = { 1, 0, SEN(stime), "stime" },
38 [BASE_NR + 26] = { 4, 0, SEN(ptrace), "ptrace" },
39 [BASE_NR + 27] = { 1, 0, SEN(alarm), "alarm" },
40 [BASE_NR + 28] = { 2, TD|TFST|TSTA, SEN(oldfstat), "oldfstat" },
41 [BASE_NR + 29] = { 0, TS, SEN(pause), "pause" },
42 [BASE_NR + 30] = { 2, TF, SEN(utime), "utime" },
43 [BASE_NR + 31] = { 0, 0, SEN(stty), "stty" },
44 [BASE_NR + 32] = { 0, 0, SEN(gtty), "gtty" },
45 [BASE_NR + 33] = { 2, TF, SEN(access), "access" },
46 [BASE_NR + 34] = { 1, 0, SEN(nice), "nice" },
47 [BASE_NR + 35] = { 1, 0, SEN(ftime), "ftime" },
48 [BASE_NR + 36] = { 0, 0, SEN(sync), "sync" },
49 [BASE_NR + 37] = { 2, TS, SEN(kill), "kill" },
50 [BASE_NR + 38] = { 2, TF, SEN(rename), "rename" },
51 [BASE_NR + 39] = { 2, TF, SEN(mkdir), "mkdir" },
52 [BASE_NR + 40] = { 1, TF, SEN(rmdir), "rmdir" },
53 [BASE_NR + 41] = { 1, TD, SEN(dup), "dup" },
54 [BASE_NR + 42] = { 0, TD, SEN(pipe), "pipe" },
55 [BASE_NR + 43] = { 1, 0, SEN(times), "times" },
56 [BASE_NR + 44] = { 0, 0, SEN(prof), "prof" },
57 [BASE_NR + 45] = { 1, TM|SI, SEN(brk), "brk" },
58 [BASE_NR + 46] = { 1, 0, SEN(setgid), "setgid" },
59 [BASE_NR + 47] = { 0, PU|NF, SEN(getgid), "getgid" },
60 [BASE_NR + 48] = { 2, TS, SEN(signal), "signal" },
61 [BASE_NR + 49] = { 0, PU|NF, SEN(geteuid), "geteuid" },
62 [BASE_NR + 50] = { 0, PU|NF, SEN(getegid), "getegid" },
63 [BASE_NR + 51] = { 1, TF, SEN(acct), "acct" },
64 [BASE_NR + 52] = { 2, TF, SEN(umount2), "umount2" },
65 [BASE_NR + 53] = { 0, 0, SEN(lock), "lock" },
66 [BASE_NR + 54] = { 3, TD, SEN(ioctl), "ioctl" },
67 [BASE_NR + 55] = { 3, TD, SEN(fcntl), "fcntl" },
68 [BASE_NR + 56] = { 0, 0, SEN(mpx), "mpx" },
69 [BASE_NR + 57] = { 2, 0, SEN(setpgid), "setpgid" },
70 [BASE_NR + 58] = { 0, 0, SEN(ulimit), "ulimit" },
71 [BASE_NR + 59] = { 1, 0, SEN(oldolduname), "oldolduname" },
72 [BASE_NR + 60] = { 1, NF, SEN(umask), "umask" },
73 [BASE_NR + 61] = { 1, TF, SEN(chroot), "chroot" },
74 [BASE_NR + 62] = { 2, TSFA, SEN(ustat), "ustat" },
75 [BASE_NR + 63] = { 2, TD, SEN(dup2), "dup2" },
76 [BASE_NR + 64] = { 0, PU|NF, SEN(getppid), "getppid" },
77 [BASE_NR + 65] = { 0, PU|NF, SEN(getpgrp), "getpgrp" },
78 [BASE_NR + 66] = { 0, 0, SEN(setsid), "setsid" },
79 [BASE_NR + 67] = { 3, TS, SEN(sigaction), "sigaction" },
80 [BASE_NR + 68] = { 0, TS, SEN(sgetmask), "sgetmask" },
81 [BASE_NR + 69] = { 1, TS, SEN(ssetmask), "ssetmask" },
82 [BASE_NR + 70] = { 2, 0, SEN(setreuid), "setreuid" },
83 [BASE_NR + 71] = { 2, 0, SEN(setregid), "setregid" },
84 [BASE_NR + 72] = { 1, TS, SEN(sigsuspend), "sigsuspend" },
85 [BASE_NR + 73] = { 1, TS, SEN(sigpending), "sigpending" },
86 [BASE_NR + 74] = { 2, 0, SEN(sethostname), "sethostname" },
87 [BASE_NR + 75] = { 2, 0, SEN(setrlimit), "setrlimit" },
88 [BASE_NR + 76] = { 2, 0, SEN(getrlimit), "getrlimit" },
89 [BASE_NR + 77] = { 2, 0, SEN(getrusage), "getrusage" },
90 [BASE_NR + 78] = { 2, 0, SEN(gettimeofday), "gettimeofday" },
91 [BASE_NR + 79] = { 2, 0, SEN(settimeofday), "settimeofday" },
92 [BASE_NR + 80] = { 2, 0, SEN(getgroups), "getgroups" },
93 [BASE_NR + 81] = { 2, 0, SEN(setgroups), "setgroups" },
94 [BASE_NR + 82] = { 0, 0, SEN(printargs), "reserved82" },
95 [BASE_NR + 83] = { 2, TF, SEN(symlink), "symlink" },
96 [BASE_NR + 84] = { 2, TF|TLST|TSTA, SEN(oldlstat), "oldlstat" },
97 [BASE_NR + 85] = { 3, TF, SEN(readlink), "readlink" },
98 [BASE_NR + 86] = { 1, TF, SEN(uselib), "uselib" },
99 [BASE_NR + 87] = { 2, TF, SEN(swapon), "swapon" },
100 [BASE_NR + 88] = { 4, 0, SEN(reboot), "reboot" },
101 [BASE_NR + 89] = { 3, TD, SEN(readdir), "readdir" },
102 [BASE_NR + 90] = { 6, TD|TM|SI, SEN(mmap), "mmap" },
103 [BASE_NR + 91] = { 2, TM|SI, SEN(munmap), "munmap" },
104 [BASE_NR + 92] = { 2, TF, SEN(truncate), "truncate" },
105 [BASE_NR + 93] = { 2, TD, SEN(ftruncate), "ftruncate" },
106 [BASE_NR + 94] = { 2, TD, SEN(fchmod), "fchmod" },
107 [BASE_NR + 95] = { 3, TD, SEN(fchown), "fchown" },
108 [BASE_NR + 96] = { 2, 0, SEN(getpriority), "getpriority" },
109 [BASE_NR + 97] = { 3, 0, SEN(setpriority), "setpriority" },
110 [BASE_NR + 98] = { 0, 0, SEN(profil), "profil" },
111 [BASE_NR + 99] = { 2, TF|TSF|TSFA, SEN(statfs), "statfs" },
112 [BASE_NR + 100] = { 2, TD|TFSF|TSFA, SEN(fstatfs), "fstatfs" },
113 [BASE_NR + 101] = { 3, 0, SEN(ioperm), "ioperm" },
114 [BASE_NR + 102] = { 2, TD|TSD, SEN(socketcall), "socketcall" },
115 [BASE_NR + 103] = { 3, 0, SEN(syslog), "syslog" },
116 [BASE_NR + 104] = { 3, 0, SEN(setitimer), "setitimer" },
117 [BASE_NR + 105] = { 2, 0, SEN(getitimer), "getitimer" },
118 [BASE_NR + 106] = { 2, TF|TST|TSTA, SEN(stat), "stat" },
119 [BASE_NR + 107] = { 2, TF|TLST|TSTA, SEN(lstat), "lstat" },
120 [BASE_NR + 108] = { 2, TD|TFST|TSTA, SEN(fstat), "fstat" },
121 [BASE_NR + 109] = { 1, 0, SEN(olduname), "olduname" },
122 [BASE_NR + 110] = { 1, 0, SEN(iopl), "iopl" },
123 [BASE_NR + 111] = { 0, 0, SEN(vhangup), "vhangup" },
124 [BASE_NR + 112] = { 0, 0, SEN(idle), "idle" },
125 [BASE_NR + 113] = { 5, 0, SEN(vm86old), "vm86" },
126 [BASE_NR + 114] = { 4, TP, SEN(wait4), "wait4" },
127 [BASE_NR + 115] = { 1, TF, SEN(swapoff), "swapoff" },
128 [BASE_NR + 116] = { 1, 0, SEN(sysinfo), "sysinfo" },
129 [BASE_NR + 117] = { 6, TI|TSD, SEN(ipc), "ipc" },
130 [BASE_NR + 118] = { 1, TD, SEN(fsync), "fsync" },
131 [BASE_NR + 119] = { 0, TS, SEN(sigreturn), "sigreturn" },
132 [BASE_NR + 120] = { 5, TP, SEN(clone), "clone" },
133 [BASE_NR + 121] = { 2, 0, SEN(setdomainname), "setdomainname" },
134 [BASE_NR + 122] = { 1, 0, SEN(uname), "uname" },
135 [BASE_NR + 123] = { 0, 0, SEN(modify_ldt), "modify_ldt" },
136 [BASE_NR + 124] = { 1, 0, SEN(adjtimex32), "adjtimex" },
137 [BASE_NR + 125] = { 3, TM|SI, SEN(mprotect), "mprotect" },
138 [BASE_NR + 126] = { 3, TS, SEN(sigprocmask), "sigprocmask" },
139 [BASE_NR + 127] = { 2, 0, SEN(create_module), "create_module" },
140 [BASE_NR + 128] = { 3, 0, SEN(init_module), "init_module" },
141 [BASE_NR + 129] = { 2, 0, SEN(delete_module), "delete_module" },
142 [BASE_NR + 130] = { 1, 0, SEN(get_kernel_syms), "get_kernel_syms" },
143 [BASE_NR + 131] = { 4, TF, SEN(quotactl), "quotactl" },
144 [BASE_NR + 132] = { 1, 0, SEN(getpgid), "getpgid" },
145 [BASE_NR + 133] = { 1, TD, SEN(fchdir), "fchdir" },
146 [BASE_NR + 134] = { 2, 0, SEN(bdflush), "bdflush" },
147 [BASE_NR + 135] = { 3, 0, SEN(sysfs), "sysfs" },
148 [BASE_NR + 136] = { 1, NF, SEN(personality), "personality" },
149 [BASE_NR + 137] = { 0, 0, SEN(afs_syscall), "afs_syscall" },
150 [BASE_NR + 138] = { 1, NF, SEN(setfsuid), "setfsuid" },
151 [BASE_NR + 139] = { 1, NF, SEN(setfsgid), "setfsgid" },
152 [BASE_NR + 140] = { 5, TD, SEN(llseek), "_llseek" },
153 [BASE_NR + 141] = { 3, TD, SEN(getdents), "getdents" },
154 [BASE_NR + 142] = { 5, TD, SEN(select), "_newselect" },
155 [BASE_NR + 143] = { 2, TD, SEN(flock), "flock" },
156 [BASE_NR + 144] = { 3, TM, SEN(msync), "msync" },
157 [BASE_NR + 145] = { 3, TD, SEN(readv), "readv" },
158 [BASE_NR + 146] = { 3, TD, SEN(writev), "writev" },
159 [BASE_NR + 147] = { 3, 0, SEN(printargs), "cacheflush" },
160 [BASE_NR + 148] = { 3, 0, SEN(printargs), "cachectl" },
161 [BASE_NR + 149] = { 4, 0, SEN(sysmips), "sysmips" },
162 [BASE_NR + 150] = { 0, 0, SEN(setup), "setup" },
163 [BASE_NR + 151] = { 1, 0, SEN(getsid), "getsid" },
164 [BASE_NR + 152] = { 1, TD, SEN(fdatasync), "fdatasync" },
165 [BASE_NR + 153] = { 1, 0, SEN(sysctl), "_sysctl" },
166 [BASE_NR + 154] = { 2, TM, SEN(mlock), "mlock" },
167 [BASE_NR + 155] = { 2, TM, SEN(munlock), "munlock" },
168 [BASE_NR + 156] = { 1, TM, SEN(mlockall), "mlockall" },
169 [BASE_NR + 157] = { 0, TM, SEN(munlockall), "munlockall" },
170 [BASE_NR + 158] = { 2, 0, SEN(sched_setparam), "sched_setparam" },
171 [BASE_NR + 159] = { 2, 0, SEN(sched_getparam), "sched_getparam" },
172 [BASE_NR + 160] = { 3, 0, SEN(sched_setscheduler), "sched_setscheduler" },
173 [BASE_NR + 161] = { 1, 0, SEN(sched_getscheduler), "sched_getscheduler" },
174 [BASE_NR + 162] = { 0, 0, SEN(sched_yield), "sched_yield" },
175 [BASE_NR + 163] = { 1, 0, SEN(sched_get_priority_max), "sched_get_priority_max"},
176 [BASE_NR + 164] = { 1, 0, SEN(sched_get_priority_min), "sched_get_priority_min"},
177 [BASE_NR + 165] = { 2, 0, SEN(sched_rr_get_interval_time32),"sched_rr_get_interval"},
178 [BASE_NR + 166] = { 2, 0, SEN(nanosleep_time32), "nanosleep" },
179 [BASE_NR + 167] = { 5, TM|SI, SEN(mremap), "mremap" },
180 [BASE_NR + 168] = { 3, TN, SEN(accept), "accept" },
181 [BASE_NR + 169] = { 3, TN, SEN(bind), "bind" },
182 [BASE_NR + 170] = { 3, TN, SEN(connect), "connect" },
183 [BASE_NR + 171] = { 3, TN, SEN(getpeername), "getpeername" },
184 [BASE_NR + 172] = { 3, TN, SEN(getsockname), "getsockname" },
185 [BASE_NR + 173] = { 5, TN, SEN(getsockopt), "getsockopt" },
186 [BASE_NR + 174] = { 2, TN, SEN(listen), "listen" },
187 [BASE_NR + 175] = { 4, TN, SEN(recv), "recv" },
188 [BASE_NR + 176] = { 6, TN, SEN(recvfrom), "recvfrom" },
189 [BASE_NR + 177] = { 3, TN, SEN(recvmsg), "recvmsg" },
190 [BASE_NR + 178] = { 4, TN, SEN(send), "send" },
191 [BASE_NR + 179] = { 3, TN, SEN(sendmsg), "sendmsg" },
192 [BASE_NR + 180] = { 6, TN, SEN(sendto), "sendto" },
193 [BASE_NR + 181] = { 5, TN, SEN(setsockopt), "setsockopt" },
194 [BASE_NR + 182] = { 2, TN, SEN(shutdown), "shutdown" },
195 [BASE_NR + 183] = { 3, TN, SEN(socket), "socket" },
196 [BASE_NR + 184] = { 4, TN, SEN(socketpair), "socketpair" },
197 [BASE_NR + 185] = { 3, 0, SEN(setresuid), "setresuid" },
198 [BASE_NR + 186] = { 3, 0, SEN(getresuid), "getresuid" },
199 [BASE_NR + 187] = { 5, 0, SEN(query_module), "query_module" },
200 [BASE_NR + 188] = { 3, TD, SEN(poll_time32), "poll" },
201 [BASE_NR + 189] = { 3, 0, SEN(nfsservctl), "nfsservctl" },
202 [BASE_NR + 190] = { 3, 0, SEN(setresgid), "setresgid" },
203 [BASE_NR + 191] = { 3, 0, SEN(getresgid), "getresgid" },
204 [BASE_NR + 192] = { 5, 0, SEN(prctl), "prctl" },
205 [BASE_NR + 193] = { 0, TS, SEN(rt_sigreturn), "rt_sigreturn" },
206 [BASE_NR + 194] = { 4, TS, SEN(rt_sigaction), "rt_sigaction" },
207 [BASE_NR + 195] = { 4, TS, SEN(rt_sigprocmask), "rt_sigprocmask" },
208 [BASE_NR + 196] = { 2, TS, SEN(rt_sigpending), "rt_sigpending" },
209 [BASE_NR + 197] = { 4, TS, SEN(rt_sigtimedwait_time32), "rt_sigtimedwait" },
210 [BASE_NR + 198] = { 3, TS, SEN(rt_sigqueueinfo), "rt_sigqueueinfo" },
211 [BASE_NR + 199] = { 2, TS, SEN(rt_sigsuspend), "rt_sigsuspend" },
212 [BASE_NR + 200] = { 6, TD, SEN(pread), "pread64" },
213 [BASE_NR + 201] = { 6, TD, SEN(pwrite), "pwrite64" },
214 [BASE_NR + 202] = { 3, TF, SEN(chown), "chown" },
215 [BASE_NR + 203] = { 2, TF, SEN(getcwd), "getcwd" },
216 [BASE_NR + 204] = { 2, 0, SEN(capget), "capget" },
217 [BASE_NR + 205] = { 2, 0, SEN(capset), "capset" },
218 [BASE_NR + 206] = { 2, TS, SEN(sigaltstack), "sigaltstack" },
219 [BASE_NR + 207] = { 4, TD|TN, SEN(sendfile), "sendfile" },
220 [BASE_NR + 208] = { 5, TN, SEN(getpmsg), "getpmsg" },
221 [BASE_NR + 209] = { 5, TN, SEN(putpmsg), "putpmsg" },
222 [BASE_NR + 210] = { 6, TD|TM|SI, SEN(mmap_4koff), "mmap2" },
223 [BASE_NR + 211] = { 4, TF, SEN(truncate64), "truncate64" },
224 [BASE_NR + 212] = { 4, TD, SEN(ftruncate64), "ftruncate64" },
225 [BASE_NR + 213] = { 2, TF|TST|TSTA, SEN(stat64), "stat64" },
226 [BASE_NR + 214] = { 2, TF|TLST|TSTA, SEN(lstat64), "lstat64" },
227 [BASE_NR + 215] = { 2, TD|TFST|TSTA, SEN(fstat64), "fstat64" },
228 [BASE_NR + 216] = { 2, TF, SEN(pivotroot), "pivot_root" },
229 [BASE_NR + 217] = { 3, TM, SEN(mincore), "mincore" },
230 [BASE_NR + 218] = { 3, TM, SEN(madvise), "madvise" },
231 [BASE_NR + 219] = { 3, TD, SEN(getdents64), "getdents64" },
232 [BASE_NR + 220] = { 3, TD, SEN(fcntl64), "fcntl64" },
233 [BASE_NR + 221] = { 0, 0, SEN(printargs), "reserved221" },
234 [BASE_NR + 222] = { 0, PU|NF, SEN(gettid), "gettid" },
235 [BASE_NR + 223] = { 5, TD, SEN(readahead), "readahead" },
236 [BASE_NR + 224] = { 5, TF, SEN(setxattr), "setxattr" },
237 [BASE_NR + 225] = { 5, TF, SEN(setxattr), "lsetxattr" },
238 [BASE_NR + 226] = { 5, TD, SEN(fsetxattr), "fsetxattr" },
239 [BASE_NR + 227] = { 4, TF, SEN(getxattr), "getxattr" },
240 [BASE_NR + 228] = { 4, TF, SEN(getxattr), "lgetxattr" },
241 [BASE_NR + 229] = { 4, TD, SEN(fgetxattr), "fgetxattr" },
242 [BASE_NR + 230] = { 3, TF, SEN(listxattr), "listxattr" },
243 [BASE_NR + 231] = { 3, TF, SEN(listxattr), "llistxattr" },
244 [BASE_NR + 232] = { 3, TD, SEN(flistxattr), "flistxattr" },
245 [BASE_NR + 233] = { 2, TF, SEN(removexattr), "removexattr" },
246 [BASE_NR + 234] = { 2, TF, SEN(removexattr), "lremovexattr" },
247 [BASE_NR + 235] = { 2, TD, SEN(fremovexattr), "fremovexattr" },
248 [BASE_NR + 236] = { 2, TS, SEN(kill), "tkill" },
249 [BASE_NR + 237] = { 4, TD|TN, SEN(sendfile64), "sendfile64" },
250 [BASE_NR + 238] = { 6, 0, SEN(futex_time32), "futex" },
251 [BASE_NR + 239] = { 3, 0, SEN(sched_setaffinity), "sched_setaffinity" },
252 [BASE_NR + 240] = { 3, 0, SEN(sched_getaffinity), "sched_getaffinity" },
253 [BASE_NR + 241] = { 2, TM, SEN(io_setup), "io_setup" },
254 [BASE_NR + 242] = { 1, TM, SEN(io_destroy), "io_destroy" },
255 [BASE_NR + 243] = { 5, 0, SEN(io_getevents_time32), "io_getevents" },
256 [BASE_NR + 244] = { 3, 0, SEN(io_submit), "io_submit" },
257 [BASE_NR + 245] = { 3, 0, SEN(io_cancel), "io_cancel" },
258 [BASE_NR + 246] = { 1, TP|SE, SEN(exit), "exit_group" },
259 [BASE_NR + 247] = { 4, 0, SEN(lookup_dcookie), "lookup_dcookie" },
260 [BASE_NR + 248] = { 1, TD, SEN(epoll_create), "epoll_create" },
261 [BASE_NR + 249] = { 4, TD, SEN(epoll_ctl), "epoll_ctl" },
262 [BASE_NR + 250] = { 4, TD, SEN(epoll_wait), "epoll_wait" },
263 [BASE_NR + 251] = { 5, TM|SI, SEN(remap_file_pages), "remap_file_pages" },
264 [BASE_NR + 252] = { 1, 0, SEN(set_tid_address), "set_tid_address" },
265 [BASE_NR + 253] = { 0, 0, SEN(restart_syscall), "restart_syscall" },
266 [BASE_NR + 254] = { 7, TD, SEN(fadvise64_64), "fadvise64" },
267 [BASE_NR + 255] = { 3, TF|TSF|TSFA, SEN(statfs64), "statfs64" },
268 [BASE_NR + 256] = { 3, TD|TFSF|TSFA, SEN(fstatfs64), "fstatfs64" },
269 [BASE_NR + 257] = { 3, 0, SEN(timer_create), "timer_create" },
270 [BASE_NR + 258] = { 4, 0, SEN(timer_settime32), "timer_settime" },
271 [BASE_NR + 259] = { 2, 0, SEN(timer_gettime32), "timer_gettime" },
272 [BASE_NR + 260] = { 1, 0, SEN(timer_getoverrun), "timer_getoverrun" },
273 [BASE_NR + 261] = { 1, 0, SEN(timer_delete), "timer_delete" },
274 [BASE_NR + 262] = { 2, 0, SEN(clock_settime32), "clock_settime" },
275 [BASE_NR + 263] = { 2, 0, SEN(clock_gettime32), "clock_gettime" },
276 [BASE_NR + 264] = { 2, 0, SEN(clock_getres_time32), "clock_getres" },
277 [BASE_NR + 265] = { 4, 0, SEN(clock_nanosleep_time32), "clock_nanosleep" },
278 [BASE_NR + 266] = { 3, TS, SEN(tgkill), "tgkill" },
279 [BASE_NR + 267] = { 2, TF, SEN(utimes), "utimes" },
280 [BASE_NR + 268] = { 6, TM, SEN(mbind), "mbind" },
281 [BASE_NR + 269] = { 5, TM, SEN(get_mempolicy), "get_mempolicy" },
282 [BASE_NR + 270] = { 3, TM, SEN(set_mempolicy), "set_mempolicy" },
283 [BASE_NR + 271] = { 4, TD, SEN(mq_open), "mq_open" },
284 [BASE_NR + 272] = { 1, 0, SEN(mq_unlink), "mq_unlink" },
285 [BASE_NR + 273] = { 5, TD, SEN(mq_timedsend_time32), "mq_timedsend" },
286 [BASE_NR + 274] = { 5, TD, SEN(mq_timedreceive_time32), "mq_timedreceive" },
287 [BASE_NR + 275] = { 2, TD, SEN(mq_notify), "mq_notify" },
288 [BASE_NR + 276] = { 3, TD, SEN(mq_getsetattr), "mq_getsetattr" },
289 [BASE_NR + 277] = { 5, 0, SEN(vserver), "vserver" },
290 [BASE_NR + 278] = { 5, TP, SEN(waitid), "waitid" },
291 [BASE_NR + 279] = { },
292 [BASE_NR + 280] = { 5, 0, SEN(add_key), "add_key" },
293 [BASE_NR + 281] = { 4, 0, SEN(request_key), "request_key" },
294 [BASE_NR + 282] = { 5, 0, SEN(keyctl), "keyctl" },
295 [BASE_NR + 283] = { 1, 0, SEN(set_thread_area), "set_thread_area" },
296 [BASE_NR + 284] = { 0, TD, SEN(inotify_init), "inotify_init" },
297 [BASE_NR + 285] = { 3, TD|TF, SEN(inotify_add_watch), "inotify_add_watch" },
298 [BASE_NR + 286] = { 2, TD, SEN(inotify_rm_watch), "inotify_rm_watch" },
299 [BASE_NR + 287] = { 4, TM, SEN(migrate_pages), "migrate_pages" },
300 [BASE_NR + 288] = { 4, TD|TF, SEN(openat), "openat" },
301 [BASE_NR + 289] = { 3, TD|TF, SEN(mkdirat), "mkdirat" },
302 [BASE_NR + 290] = { 4, TD|TF, SEN(mknodat), "mknodat" },
303 [BASE_NR + 291] = { 5, TD|TF, SEN(fchownat), "fchownat" },
304 [BASE_NR + 292] = { 3, TD|TF, SEN(futimesat), "futimesat" },
305 [BASE_NR + 293] = { 4, TD|TF|TFST|TSTA,SEN(fstatat64), "fstatat64" },
306 [BASE_NR + 294] = { 3, TD|TF, SEN(unlinkat), "unlinkat" },
307 [BASE_NR + 295] = { 4, TD|TF, SEN(renameat), "renameat" },
308 [BASE_NR + 296] = { 5, TD|TF, SEN(linkat), "linkat" },
309 [BASE_NR + 297] = { 3, TD|TF, SEN(symlinkat), "symlinkat" },
310 [BASE_NR + 298] = { 4, TD|TF, SEN(readlinkat), "readlinkat" },
311 [BASE_NR + 299] = { 3, TD|TF, SEN(fchmodat), "fchmodat" },
312 [BASE_NR + 300] = { 3, TD|TF, SEN(faccessat), "faccessat" },
313 [BASE_NR + 301] = { 6, TD, SEN(pselect6_time32), "pselect6" },
314 [BASE_NR + 302] = { 5, TD, SEN(ppoll_time32), "ppoll" },
315 [BASE_NR + 303] = { 1, TP, SEN(unshare), "unshare" },
316 [BASE_NR + 304] = { 6, TD, SEN(splice), "splice" },
317 [BASE_NR + 305] = { 7, TD, SEN(sync_file_range), "sync_file_range" },
318 [BASE_NR + 306] = { 4, TD, SEN(tee), "tee" },
319 [BASE_NR + 307] = { 4, TD, SEN(vmsplice), "vmsplice" },
320 [BASE_NR + 308] = { 6, TM, SEN(move_pages), "move_pages" },
321 [BASE_NR + 309] = { 2, 0, SEN(set_robust_list), "set_robust_list" },
322 [BASE_NR + 310] = { 3, 0, SEN(get_robust_list), "get_robust_list" },
323 [BASE_NR + 311] = { 4, 0, SEN(kexec_load), "kexec_load" },
324 [BASE_NR + 312] = { 3, 0, SEN(getcpu), "getcpu" },
325 [BASE_NR + 313] = { 6, TD, SEN(epoll_pwait), "epoll_pwait" },
326 [BASE_NR + 314] = { 3, 0, SEN(ioprio_set), "ioprio_set" },
327 [BASE_NR + 315] = { 2, 0, SEN(ioprio_get), "ioprio_get" },
328 [BASE_NR + 316] = { 4, TD|TF, SEN(utimensat_time32), "utimensat" },
329 [BASE_NR + 317] = { 3, TD|TS, SEN(signalfd), "signalfd" },
330 [BASE_NR + 318] = { 4, TD, SEN(timerfd), "timerfd" },
331 [BASE_NR + 319] = { 1, TD, SEN(eventfd), "eventfd" },
332 [BASE_NR + 320] = { 6, TD, SEN(fallocate), "fallocate" },
333 [BASE_NR + 321] = { 2, TD, SEN(timerfd_create), "timerfd_create" },
334 [BASE_NR + 322] = { 2, TD, SEN(timerfd_gettime32), "timerfd_gettime" },
335 [BASE_NR + 323] = { 4, TD, SEN(timerfd_settime32), "timerfd_settime" },
336 [BASE_NR + 324] = { 4, TD|TS, SEN(signalfd4), "signalfd4" },
337 [BASE_NR + 325] = { 2, TD, SEN(eventfd2), "eventfd2" },
338 [BASE_NR + 326] = { 1, TD, SEN(epoll_create1), "epoll_create1" },
339 [BASE_NR + 327] = { 3, TD, SEN(dup3), "dup3" },
340 [BASE_NR + 328] = { 2, TD, SEN(pipe2), "pipe2" },
341 [BASE_NR + 329] = { 1, TD, SEN(inotify_init1), "inotify_init1" },
342 [BASE_NR + 330] = { 5, TD, SEN(preadv), "preadv" },
343 [BASE_NR + 331] = { 5, TD, SEN(pwritev), "pwritev" },
344 [BASE_NR + 332] = { 4, TP|TS, SEN(rt_tgsigqueueinfo), "rt_tgsigqueueinfo" },
345 [BASE_NR + 333] = { 5, TD, SEN(perf_event_open), "perf_event_open" },
346 [BASE_NR + 334] = { 4, TN, SEN(accept4), "accept4" },
347 [BASE_NR + 335] = { 5, TN, SEN(recvmmsg_time32), "recvmmsg" },
348 [BASE_NR + 336] = { 2, TD, SEN(fanotify_init), "fanotify_init" },
349 [BASE_NR + 337] = { 6, TD|TF, SEN(fanotify_mark), "fanotify_mark" },
350 [BASE_NR + 338] = { 4, 0, SEN(prlimit64), "prlimit64" },
351 [BASE_NR + 339] = { 5, TD|TF, SEN(name_to_handle_at), "name_to_handle_at" },
352 [BASE_NR + 340] = { 3, TD, SEN(open_by_handle_at), "open_by_handle_at" },
353 [BASE_NR + 341] = { 2, 0, SEN(clock_adjtime32), "clock_adjtime" },
354 [BASE_NR + 342] = { 1, TD, SEN(syncfs), "syncfs" },
355 [BASE_NR + 343] = { 4, TN, SEN(sendmmsg), "sendmmsg" },
356 [BASE_NR + 344] = { 2, TD, SEN(setns), "setns" },
357 [BASE_NR + 345] = { 6, 0, SEN(process_vm_readv), "process_vm_readv" },
358 [BASE_NR + 346] = { 6, 0, SEN(process_vm_writev), "process_vm_writev" },
359 [BASE_NR + 347] = { 5, 0, SEN(kcmp), "kcmp" },
360 [BASE_NR + 348] = { 3, TD, SEN(finit_module), "finit_module" },
361 [BASE_NR + 349] = { 3, 0, SEN(sched_setattr), "sched_setattr" },
362 [BASE_NR + 350] = { 4, 0, SEN(sched_getattr), "sched_getattr" },
363 [BASE_NR + 351] = { 5, TD|TF, SEN(renameat2), "renameat2" },
364 [BASE_NR + 352] = { 3, 0, SEN(seccomp), "seccomp" },
365 [BASE_NR + 353] = { 3, 0, SEN(getrandom), "getrandom" },
366 [BASE_NR + 354] = { 2, TD, SEN(memfd_create), "memfd_create" },
367 [BASE_NR + 355] = { 3, TD, SEN(bpf), "bpf" },
368 [BASE_NR + 356] = { 5, TD|TF|TP|TSD|SE|SI, SEN(execveat), "execveat" },
369 [BASE_NR + 357] = { 1, TD, SEN(userfaultfd), "userfaultfd" },
370 [BASE_NR + 358] = { 2, 0, SEN(membarrier), "membarrier" },
371 [BASE_NR + 359] = { 3, TM, SEN(mlock2), "mlock2" },
372 [BASE_NR + 360] = { 6, TD, SEN(copy_file_range), "copy_file_range" },
373 [BASE_NR + 361] = { 6, TD, SEN(preadv2), "preadv2" },
374 [BASE_NR + 362] = { 6, TD, SEN(pwritev2), "pwritev2" },
375 [BASE_NR + 363] = { 4, TM|SI, SEN(pkey_mprotect), "pkey_mprotect" },
376 [BASE_NR + 364] = { 2, 0, SEN(pkey_alloc), "pkey_alloc" },
377 [BASE_NR + 365] = { 1, 0, SEN(pkey_free), "pkey_free" },
378 [BASE_NR + 366] = { 5, TD|TF|TSTA, SEN(statx), "statx" },
379 [BASE_NR + 367] = { 4, 0, SEN(rseq), "rseq" },
380 [BASE_NR + 368] = { 6, 0, SEN(io_pgetevents_time32), "io_pgetevents" },
381 /* room for arch specific calls */
382 [BASE_NR + 393] = { 3, TI, SEN(semget), "semget" },
383 [BASE_NR + 394] = { 4, TI, SEN(semctl), "semctl" },
384 [BASE_NR + 395] = { 3, TI, SEN(shmget), "shmget" },
385 [BASE_NR + 396] = { 3, TI, SEN(shmctl), "shmctl" },
386 [BASE_NR + 397] = { 3, TI|TM|SI, SEN(shmat), "shmat" },
387 [BASE_NR + 398] = { 1, TI|TM|SI, SEN(shmdt), "shmdt" },
388 [BASE_NR + 399] = { 2, TI, SEN(msgget), "msgget" },
389 [BASE_NR + 400] = { 4, TI, SEN(msgsnd), "msgsnd" },
390 [BASE_NR + 401] = { 5, TI, SEN(msgrcv), "msgrcv" },
391 [BASE_NR + 402] = { 3, TI, SEN(msgctl), "msgctl" },
392 # include "syscallent-common-32.h"
393 # include "syscallent-common.h"
395 # define SYS_socket_subcall 4500
396 # include "subcall32.h"
400 # define SYSCALL_NAME_PREFIX "o32:"
401 # include "syscallent-o32-stub.h"
402 # include "syscallent-common-32-stub.h"
403 # include "syscallent-common-stub.h"
404 # undef SYSCALL_NAME_PREFIX