]>
Commit | Line | Data |
---|---|---|
1da177e4 LT |
1 | /* $Id: systbl.S,v 1.11 2000/03/13 21:57:35 davem Exp $ |
2 | * systbl.S: System call entry point table for Solaris compatibility. | |
3 | * | |
4 | * Copyright (C) 1997,1998 Jakub Jelinek (jj@sunsite.mff.cuni.cz) | |
5 | * Copyright (C) 1996 Miguel de Icaza (miguel@nuclecu.unam.mx) | |
6 | */ | |
7 | ||
8 | #include <asm/unistd.h> | |
9 | ||
10 | /* Fall back to sys_call_table32 entry */ | |
11 | #define CHAIN(name) __NR_##name | |
12 | ||
13 | /* Pass pt_regs pointer as first argument */ | |
14 | #define REGS(name) name+1 | |
15 | ||
16 | /* Hack till all be implemented */ | |
17 | #define solaris_getpmsg solaris_unimplemented | |
18 | #define solaris_hrtsys solaris_unimplemented | |
19 | #define solaris_msgsys solaris_unimplemented | |
20 | #define solaris_putpmsg solaris_unimplemented | |
21 | #define solaris_semsys solaris_unimplemented | |
22 | ||
23 | .data | |
24 | .globl solaris_sys_table | |
25 | solaris_sys_table: | |
26 | .word solaris_unimplemented /* nosys 0 */ | |
27 | .word CHAIN(exit) /* exit d 1 */ | |
28 | .word CHAIN(fork) /* fork 2 */ | |
29 | .word CHAIN(read) /* read dpd 3 */ | |
30 | .word CHAIN(write) /* write dpd 4 */ | |
31 | .word solaris_open /* open soo 5 */ | |
32 | .word CHAIN(close) /* close d 6 */ | |
33 | .word solaris_wait /* wait xxx 7 */ | |
34 | .word CHAIN(creat) /* creat so 8 */ | |
35 | .word CHAIN(link) /* link ss 9 */ | |
36 | .word CHAIN(unlink) /* unlink s 10 */ | |
37 | .word solaris_unimplemented /* exec sxx 11 */ | |
38 | .word CHAIN(chdir) /* chdir s 12 */ | |
39 | .word CHAIN(time) /* time 13 */ | |
40 | .word solaris_mknod /* mknod sox 14 */ | |
41 | .word CHAIN(chmod) /* chmod so 15 */ | |
42 | .word CHAIN(chown) /* chown sdd 16 */ | |
43 | .word solaris_brk /* brk/break x 17 */ | |
44 | .word solaris_stat /* stat sp 18 */ | |
45 | .word CHAIN(lseek) /* seek/lseek ddd 19 */ | |
46 | .word solaris_getpid /* getpid 20 */ | |
47 | .word solaris_unimplemented /* mount 21 */ | |
48 | .word CHAIN(umount) /* umount s 22 */ | |
49 | .word CHAIN(setuid) /* setuid d 23 */ | |
50 | .word solaris_getuid /* getuid 24 */ | |
51 | .word CHAIN(stime) /* stime d 25 */ | |
52 | #if 0 | |
53 | .word solaris_ptrace /* ptrace xdxx 26 */ | |
54 | #else | |
55 | .word CHAIN(ptrace) /* ptrace xdxx 26 */ | |
56 | #endif | |
57 | .word CHAIN(alarm) /* alarm d 27 */ | |
58 | .word solaris_fstat /* fstat dp 28 */ | |
59 | .word CHAIN(pause) /* pause 29 */ | |
60 | .word CHAIN(utime) /* utime xx 30 */ | |
61 | .word solaris_unimplemented /* stty 31 */ | |
62 | .word solaris_unimplemented /* gtty 32 */ | |
63 | .word solaris_access /* access so 33 */ | |
64 | .word CHAIN(nice) /* nice d 34 */ | |
65 | .word solaris_statfs /* statfs spdd 35 */ | |
66 | .word CHAIN(sync) /* sync 36 */ | |
67 | .word solaris_kill /* kill dd 37 */ | |
68 | .word solaris_fstatfs /* fstatfs dpdd 38 */ | |
69 | .word solaris_procids /* pgrpsys ddd 39 */ | |
70 | .word solaris_unimplemented /* xenix 40 */ | |
71 | .word CHAIN(dup) /* dup d 41 */ | |
72 | .word CHAIN(pipe) /* pipe 42 */ | |
73 | .word CHAIN(times) /* times p 43 */ | |
74 | .word 44 /*CHAIN(profil)*/ /* prof xxxx 44 */ | |
75 | .word solaris_unimplemented /* lock/plock 45 */ | |
76 | .word CHAIN(setgid) /* setgid d 46 */ | |
77 | .word solaris_getgid /* getgid 47 */ | |
78 | .word solaris_sigfunc /* sigfunc xx 48 */ | |
79 | .word REGS(solaris_msgsys) /* msgsys dxddd 49 */ | |
80 | .word solaris_unimplemented /* syssun/3b 50 */ | |
81 | .word CHAIN(acct) /* acct/sysacct x 51 */ | |
82 | .word solaris_shmsys /* shmsys ddxo 52 */ | |
83 | .word REGS(solaris_semsys) /* semsys dddx 53 */ | |
84 | .word solaris_ioctl /* ioctl dxx 54 */ | |
85 | .word solaris_unimplemented /* uadmin xxx 55 */ | |
86 | .word solaris_unimplemented /* reserved:exch 56 */ | |
87 | .word solaris_utssys /* utssys x 57 */ | |
88 | .word CHAIN(fsync) /* fsync d 58 */ | |
89 | .word CHAIN(execve) /* execv spp 59 */ | |
90 | .word CHAIN(umask) /* umask o 60 */ | |
91 | .word CHAIN(chroot) /* chroot s 61 */ | |
92 | .word solaris_fcntl /* fcntl dxx 62 */ | |
93 | .word solaris_ulimit /* ulimit xx 63 */ | |
94 | .word solaris_unimplemented /* ? 64 */ | |
95 | .word solaris_unimplemented /* ? 65 */ | |
96 | .word solaris_unimplemented /* ? 66 */ | |
97 | .word solaris_unimplemented /* ? 67 */ | |
98 | .word solaris_unimplemented /* ? 68 */ | |
99 | .word solaris_unimplemented /* ? 69 */ | |
100 | .word solaris_unimplemented /* advfs 70 */ | |
101 | .word solaris_unimplemented /* unadvfs 71 */ | |
102 | .word solaris_unimplemented /* rmount 72 */ | |
103 | .word solaris_unimplemented /* rumount 73 */ | |
104 | .word solaris_unimplemented /* rfstart 74 */ | |
105 | .word solaris_unimplemented /* ? 75 */ | |
106 | .word solaris_unimplemented /* rdebug 76 */ | |
107 | .word solaris_unimplemented /* rfstop 77 */ | |
108 | .word solaris_unimplemented /* rfsys 78 */ | |
109 | .word CHAIN(rmdir) /* rmdir s 79 */ | |
110 | .word CHAIN(mkdir) /* mkdir so 80 */ | |
111 | .word CHAIN(getdents) /* getdents dxd 81 */ | |
112 | .word solaris_unimplemented /* libattach 82 */ | |
113 | .word solaris_unimplemented /* libdetach 83 */ | |
114 | .word CHAIN(sysfs) /* sysfs dxx 84 */ | |
115 | .word solaris_getmsg /* getmsg dxxx 85 */ | |
116 | .word solaris_putmsg /* putmsg dxxd 86 */ | |
117 | .word CHAIN(poll) /* poll xdd 87 */ | |
118 | .word solaris_lstat /* lstat sp 88 */ | |
119 | .word CHAIN(symlink) /* symlink ss 89 */ | |
120 | .word CHAIN(readlink) /* readlink spd 90 */ | |
121 | .word CHAIN(setgroups) /* setgroups dp 91 */ | |
122 | .word CHAIN(getgroups) /* getgroups dp 92 */ | |
123 | .word CHAIN(fchmod) /* fchmod do 93 */ | |
124 | .word CHAIN(fchown) /* fchown ddd 94 */ | |
125 | .word solaris_sigprocmask /* sigprocmask dxx 95 */ | |
126 | .word solaris_sigsuspend /* sigsuspend x 96 */ | |
127 | .word solaris_sigaltstack /* sigaltstack xx 97 */ | |
128 | .word solaris_sigaction /* sigaction dxx 98 */ | |
129 | .word solaris_sigpending /* sigpending dd 99 */ | |
130 | .word REGS(solaris_context) /* context 100 */ | |
131 | .word solaris_unimplemented /* evsys 101 */ | |
132 | .word solaris_unimplemented /* evtrapret 102 */ | |
133 | .word solaris_statvfs /* statvfs sp 103 */ | |
134 | .word solaris_fstatvfs /* fstatvfs dp 104 */ | |
135 | .word solaris_unimplemented /* unknown 105 */ | |
136 | .word solaris_unimplemented /* nfssys 106 */ | |
137 | .word solaris_waitid /* waitid ddxd 107 */ | |
138 | .word solaris_unimplemented /* sigsendsys ddd 108 */ | |
139 | .word REGS(solaris_hrtsys) /* hrtsys xxx 109 */ | |
140 | .word solaris_unimplemented /* acancel dxd 110 */ | |
141 | .word solaris_unimplemented /* async 111 */ | |
142 | .word solaris_unimplemented /* priocntlsys 112 */ | |
143 | .word solaris_pathconf /* pathconf sd 113 */ | |
144 | .word CHAIN(mincore) /* mincore d 114 */ | |
145 | .word solaris_mmap /* mmap xxxxdx 115 */ | |
146 | .word CHAIN(mprotect) /* mprotect xdx 116 */ | |
147 | .word CHAIN(munmap) /* munmap xd 117 */ | |
148 | .word solaris_fpathconf /* fpathconf dd 118 */ | |
149 | .word CHAIN(fork) /* fork 119 */ | |
150 | .word solaris_unimplemented /* fchdir d 120 */ | |
151 | .word CHAIN(readv) /* readv dxd 121 */ | |
152 | .word CHAIN(writev) /* writev dxd 122 */ | |
153 | .word solaris_xstat /* xstat dsx 123 */ | |
154 | .word solaris_lxstat /* lxstat dsx 124 */ | |
155 | .word solaris_fxstat /* fxstat ddx 125 */ | |
156 | .word solaris_xmknod /* xmknod dsox 126 */ | |
157 | .word solaris_unimplemented /* syslocal d 127 */ | |
158 | .word solaris_setrlimit /* setrlimit dp 128 */ | |
159 | .word solaris_getrlimit /* getrlimit dp 129 */ | |
160 | .word CHAIN(chown) /* lchown sdd 130 */ | |
161 | .word solaris_unimplemented /* memcntl 131 */ | |
162 | .word solaris_getpmsg /* getpmsg dxxxx 132 */ | |
163 | .word solaris_putpmsg /* putpmsg dxxdd 133 */ | |
164 | .word CHAIN(rename) /* rename ss 134 */ | |
165 | .word solaris_utsname /* uname x 135 */ | |
166 | .word solaris_unimplemented /* setegid 136 */ | |
167 | .word solaris_sysconf /* sysconfig d 137 */ | |
168 | .word solaris_unimplemented /* adjtime 138 */ | |
169 | .word solaris_sysinfo /* systeminfo dsd 139 */ | |
170 | .word solaris_unimplemented /* ? 140 */ | |
171 | .word solaris_unimplemented /* seteuid 141 */ | |
172 | .word solaris_unimplemented /* ? 142 */ | |
173 | .word solaris_unimplemented /* ? 143 */ | |
174 | .word solaris_unimplemented /* secsys dx 144 */ | |
175 | .word solaris_unimplemented /* filepriv sdxd 145 */ | |
176 | .word solaris_unimplemented /* procpriv dxd 146 */ | |
177 | .word solaris_unimplemented /* devstat sdx 147 */ | |
178 | .word solaris_unimplemented /* aclipc ddddx 148 */ | |
179 | .word solaris_unimplemented /* fdevstat ddx 149 */ | |
180 | .word solaris_unimplemented /* flvlfile ddx 150 */ | |
181 | .word solaris_unimplemented /* lvlfile sdx 151 */ | |
182 | .word solaris_unimplemented /* ? 152 */ | |
183 | .word solaris_unimplemented /* fchroot d 153 */ | |
184 | .word solaris_unimplemented /* lvlproc dx 154 */ | |
185 | .word solaris_unimplemented /* ? 155 */ | |
186 | .word solaris_gettimeofday /* gettimeofday x 156 */ | |
187 | .word CHAIN(getitimer) /* getitimer dx 157 */ | |
188 | .word CHAIN(setitimer) /* setitimer dxx 158 */ | |
189 | .word solaris_unimplemented /* lwp-xxx 159 */ | |
190 | .word solaris_unimplemented /* lwp-xxx 160 */ | |
191 | .word solaris_unimplemented /* lwp-xxx 161 */ | |
192 | .word solaris_unimplemented /* lwp-xxx 162 */ | |
193 | .word solaris_unimplemented /* lwp-xxx 163 */ | |
194 | .word solaris_unimplemented /* lwp-xxx 164 */ | |
195 | .word solaris_unimplemented /* lwp-xxx 165 */ | |
196 | .word solaris_unimplemented /* lwp-xxx 166 */ | |
197 | .word solaris_unimplemented /* lwp-xxx 167 */ | |
198 | .word solaris_unimplemented /* lwp-xxx 168 */ | |
199 | .word solaris_unimplemented /* lwp-xxx 169 */ | |
200 | .word solaris_unimplemented /* lwp-xxx 170 */ | |
201 | .word solaris_unimplemented /* lwp-xxx 171 */ | |
202 | .word solaris_unimplemented /* lwp-xxx 172 */ | |
203 | .word solaris_pread /* pread dpdd 173 */ | |
204 | .word solaris_pwrite /* pwrite dpdd 174 */ | |
205 | .word REGS(solaris_llseek) /* llseek dLd 175 */ | |
206 | .word solaris_unimplemented /* lwpself 176 */ | |
207 | .word solaris_unimplemented /* lwpinfo 177 */ | |
208 | .word solaris_unimplemented /* lwpprivate 178 */ | |
209 | .word solaris_unimplemented /* processorbind 179 */ | |
210 | .word solaris_unimplemented /* processorexbind 180 */ | |
211 | .word solaris_unimplemented /* 181 */ | |
212 | .word solaris_unimplemented /* sync_mailbox 182 */ | |
213 | .word solaris_unimplemented /* prepblock 183 */ | |
214 | .word solaris_unimplemented /* block 184 */ | |
215 | .word solaris_acl /* acl sddp 185 */ | |
216 | .word solaris_unimplemented /* unblock 186 */ | |
217 | .word solaris_unimplemented /* cancelblock 187 */ | |
218 | .word solaris_unimplemented /* ? 188 */ | |
219 | .word solaris_unimplemented /* xxxxx 189 */ | |
220 | .word solaris_unimplemented /* xxxxxe 190 */ | |
221 | .word solaris_unimplemented /* 191 */ | |
222 | .word solaris_unimplemented /* 192 */ | |
223 | .word solaris_unimplemented /* 193 */ | |
224 | .word solaris_unimplemented /* 194 */ | |
225 | .word solaris_unimplemented /* 195 */ | |
226 | .word solaris_unimplemented /* 196 */ | |
227 | .word solaris_unimplemented /* 197 */ | |
228 | .word solaris_unimplemented /* 198 */ | |
229 | .word CHAIN(nanosleep) /* nanosleep dd 199 */ | |
230 | .word solaris_facl /* facl dddp 200 */ | |
231 | .word solaris_unimplemented /* 201 */ | |
232 | .word CHAIN(setreuid) /* setreuid dd 202 */ | |
233 | .word CHAIN(setregid) /* setregid dd 203 */ | |
234 | .word solaris_unimplemented /* 204 */ | |
235 | .word solaris_unimplemented /* 205 */ | |
236 | .word solaris_unimplemented /* 206 */ | |
237 | .word solaris_unimplemented /* 207 */ | |
238 | .word solaris_unimplemented /* 208 */ | |
239 | .word solaris_unimplemented /* 209 */ | |
240 | .word solaris_unimplemented /* 210 */ | |
241 | .word solaris_unimplemented /* 211 */ | |
242 | .word solaris_unimplemented /* 212 */ | |
243 | .word solaris_getdents64 /* getdents64 dpd 213 */ | |
244 | .word REGS(solaris_mmap64) /* mmap64 xxxxdX 214 */ | |
245 | .word solaris_stat64 /* stat64 sP 215 */ | |
246 | .word solaris_lstat64 /* lstat64 sP 216 */ | |
247 | .word solaris_fstat64 /* fstat64 dP 217 */ | |
248 | .word solaris_statvfs64 /* statvfs64 sP 218 */ | |
249 | .word solaris_fstatvfs64 /* fstatvfs64 dP 219 */ | |
250 | .word solaris_setrlimit64 /* setrlimit64 dP 220 */ | |
251 | .word solaris_getrlimit64 /* getrlimit64 dP 221 */ | |
252 | .word CHAIN(pread64) /* pread64 dpdD 222 */ | |
253 | .word CHAIN(pwrite64) /* pwrite64 dpdD 223 */ | |
254 | .word CHAIN(creat) /* creat64 so 224 */ | |
255 | .word solaris_open /* open64 soo 225 */ | |
256 | .word solaris_unimplemented /* 226 */ | |
257 | .word solaris_unimplemented /* 227 */ | |
258 | .word solaris_unimplemented /* 228 */ | |
259 | .word solaris_unimplemented /* 229 */ | |
260 | .word solaris_socket /* socket ddd 230 */ | |
261 | .word solaris_socketpair /* socketpair dddp 231 */ | |
262 | .word solaris_bind /* bind dpd 232 */ | |
263 | .word solaris_listen /* listen dd 233 */ | |
264 | .word solaris_accept /* accept dpp 234 */ | |
265 | .word solaris_connect /* connect dpd 235 */ | |
266 | .word solaris_shutdown /* shutdown dd 236 */ | |
267 | .word solaris_recv /* recv dpdd 237 */ | |
268 | .word solaris_recvfrom /* recvfrom dpddpp 238 */ | |
269 | .word solaris_recvmsg /* recvmsg dpd 239 */ | |
270 | .word solaris_send /* send dpdd 240 */ | |
271 | .word solaris_sendmsg /* sendmsg dpd 241 */ | |
272 | .word solaris_sendto /* sendto dpddpd 242 */ | |
273 | .word solaris_getpeername /* getpeername dpp 243 */ | |
274 | .word solaris_getsockname /* getsockname dpp 244 */ | |
275 | .word solaris_getsockopt /* getsockopt dddpp 245 */ | |
276 | .word solaris_setsockopt /* setsockopt dddpp 246 */ | |
277 | .word solaris_unimplemented /* 247 */ | |
278 | .word solaris_ntp_gettime /* ntp_gettime p 248 */ | |
279 | .word solaris_ntp_adjtime /* ntp_adjtime p 249 */ | |
280 | .word solaris_unimplemented /* 250 */ | |
281 | .word solaris_unimplemented /* 251 */ | |
282 | .word solaris_unimplemented /* 252 */ | |
283 | .word solaris_unimplemented /* 253 */ | |
284 | .word solaris_unimplemented /* 254 */ | |
285 | .word solaris_unimplemented /* 255 */ | |
286 | .word solaris_unimplemented /* 256 */ | |
287 | .word solaris_unimplemented /* 257 */ | |
288 | .word solaris_unimplemented /* 258 */ | |
289 | .word solaris_unimplemented /* 259 */ | |
290 | .word solaris_unimplemented /* 260 */ | |
291 | .word solaris_unimplemented /* 261 */ | |
292 | .word solaris_unimplemented /* 262 */ | |
293 | .word solaris_unimplemented /* 263 */ | |
294 | .word solaris_unimplemented /* 264 */ | |
295 | .word solaris_unimplemented /* 265 */ | |
296 | .word solaris_unimplemented /* 266 */ | |
297 | .word solaris_unimplemented /* 267 */ | |
298 | .word solaris_unimplemented /* 268 */ | |
299 | .word solaris_unimplemented /* 269 */ | |
300 | .word solaris_unimplemented /* 270 */ | |
301 | .word solaris_unimplemented /* 271 */ | |
302 | .word solaris_unimplemented /* 272 */ | |
303 | .word solaris_unimplemented /* 273 */ | |
304 | .word solaris_unimplemented /* 274 */ | |
305 | .word solaris_unimplemented /* 275 */ | |
306 | .word solaris_unimplemented /* 276 */ | |
307 | .word solaris_unimplemented /* 277 */ | |
308 | .word solaris_unimplemented /* 278 */ | |
309 | .word solaris_unimplemented /* 279 */ | |
310 | .word solaris_unimplemented /* 280 */ | |
311 | .word solaris_unimplemented /* 281 */ | |
312 | .word solaris_unimplemented /* 282 */ | |
313 | .word solaris_unimplemented /* 283 */ | |
314 |