1 #ifndef _ASM_IA64_UNISTD_H 2 #define _ASM_IA64_UNISTD_H 3 4 /* 5 * IA-64 Linux syscall numbers and inline-functions. 6 * 7 * Copyright (C) 1998-2005 Hewlett-Packard Co 8 * David Mosberger-Tang <davidm@hpl.hp.com> 9 */ 10 11 #include <asm/break.h> 12 13 #define __BREAK_SYSCALL __IA64_BREAK_SYSCALL 14 15 #define __NR_ni_syscall 1024 16 #define __NR_exit 1025 17 #define __NR_read 1026 18 #define __NR_write 1027 19 #define __NR_open 1028 20 #define __NR_close 1029 21 #define __NR_creat 1030 22 #define __NR_link 1031 23 #define __NR_unlink 1032 24 #define __NR_execve 1033 25 #define __NR_chdir 1034 26 #define __NR_fchdir 1035 27 #define __NR_utimes 1036 28 #define __NR_mknod 1037 29 #define __NR_chmod 1038 30 #define __NR_chown 1039 31 #define __NR_lseek 1040 32 #define __NR_getpid 1041 33 #define __NR_getppid 1042 34 #define __NR_mount 1043 35 #define __NR_umount 1044 36 #define __NR_setuid 1045 37 #define __NR_getuid 1046 38 #define __NR_geteuid 1047 39 #define __NR_ptrace 1048 40 #define __NR_access 1049 41 #define __NR_sync 1050 42 #define __NR_fsync 1051 43 #define __NR_fdatasync 1052 44 #define __NR_kill 1053 45 #define __NR_rename 1054 46 #define __NR_mkdir 1055 47 #define __NR_rmdir 1056 48 #define __NR_dup 1057 49 #define __NR_pipe 1058 50 #define __NR_times 1059 51 #define __NR_brk 1060 52 #define __NR_setgid 1061 53 #define __NR_getgid 1062 54 #define __NR_getegid 1063 55 #define __NR_acct 1064 56 #define __NR_ioctl 1065 57 #define __NR_fcntl 1066 58 #define __NR_umask 1067 59 #define __NR_chroot 1068 60 #define __NR_ustat 1069 61 #define __NR_dup2 1070 62 #define __NR_setreuid 1071 63 #define __NR_setregid 1072 64 #define __NR_getresuid 1073 65 #define __NR_setresuid 1074 66 #define __NR_getresgid 1075 67 #define __NR_setresgid 1076 68 #define __NR_getgroups 1077 69 #define __NR_setgroups 1078 70 #define __NR_getpgid 1079 71 #define __NR_setpgid 1080 72 #define __NR_setsid 1081 73 #define __NR_getsid 1082 74 #define __NR_sethostname 1083 75 #define __NR_setrlimit 1084 76 #define __NR_getrlimit 1085 77 #define __NR_getrusage 1086 78 #define __NR_gettimeofday 1087 79 #define __NR_settimeofday 1088 80 #define __NR_select 1089 81 #define __NR_poll 1090 82 #define __NR_symlink 1091 83 #define __NR_readlink 1092 84 #define __NR_uselib 1093 85 #define __NR_swapon 1094 86 #define __NR_swapoff 1095 87 #define __NR_reboot 1096 88 #define __NR_truncate 1097 89 #define __NR_ftruncate 1098 90 #define __NR_fchmod 1099 91 #define __NR_fchown 1100 92 #define __NR_getpriority 1101 93 #define __NR_setpriority 1102 94 #define __NR_statfs 1103 95 #define __NR_fstatfs 1104 96 #define __NR_gettid 1105 97 #define __NR_semget 1106 98 #define __NR_semop 1107 99 #define __NR_semctl 1108 100 #define __NR_msgget 1109 101 #define __NR_msgsnd 1110 102 #define __NR_msgrcv 1111 103 #define __NR_msgctl 1112 104 #define __NR_shmget 1113 105 #define __NR_shmat 1114 106 #define __NR_shmdt 1115 107 #define __NR_shmctl 1116 108 /* also known as klogctl() in GNU libc: */ 109 #define __NR_syslog 1117 110 #define __NR_setitimer 1118 111 #define __NR_getitimer 1119 112 /* 1120 was __NR_old_stat */ 113 /* 1121 was __NR_old_lstat */ 114 /* 1122 was __NR_old_fstat */ 115 #define __NR_vhangup 1123 116 #define __NR_lchown 1124 117 #define __NR_remap_file_pages 1125 118 #define __NR_wait4 1126 119 #define __NR_sysinfo 1127 120 #define __NR_clone 1128 121 #define __NR_setdomainname 1129 122 #define __NR_uname 1130 123 #define __NR_adjtimex 1131 124 /* 1132 was __NR_create_module */ 125 #define __NR_init_module 1133 126 #define __NR_delete_module 1134 127 /* 1135 was __NR_get_kernel_syms */ 128 /* 1136 was __NR_query_module */ 129 #define __NR_quotactl 1137 130 #define __NR_bdflush 1138 131 #define __NR_sysfs 1139 132 #define __NR_personality 1140 133 #define __NR_afs_syscall 1141 134 #define __NR_setfsuid 1142 135 #define __NR_setfsgid 1143 136 #define __NR_getdents 1144 137 #define __NR_flock 1145 138 #define __NR_readv 1146 139 #define __NR_writev 1147 140 #define __NR_pread64 1148 141 #define __NR_pwrite64 1149 142 #define __NR__sysctl 1150 143 #define __NR_mmap 1151 144 #define __NR_munmap 1152 145 #define __NR_mlock 1153 146 #define __NR_mlockall 1154 147 #define __NR_mprotect 1155 148 #define __NR_mremap 1156 149 #define __NR_msync 1157 150 #define __NR_munlock 1158 151 #define __NR_munlockall 1159 152 #define __NR_sched_getparam 1160 153 #define __NR_sched_setparam 1161 154 #define __NR_sched_getscheduler 1162 155 #define __NR_sched_setscheduler 1163 156 #define __NR_sched_yield 1164 157 #define __NR_sched_get_priority_max 1165 158 #define __NR_sched_get_priority_min 1166 159 #define __NR_sched_rr_get_interval 1167 160 #define __NR_nanosleep 1168 161 #define __NR_nfsservctl 1169 162 #define __NR_prctl 1170 163 /* 1171 is reserved for backwards compatibility with old __NR_getpagesize */ 164 #define __NR_mmap2 1172 165 #define __NR_pciconfig_read 1173 166 #define __NR_pciconfig_write 1174 167 #define __NR_perfmonctl 1175 168 #define __NR_sigaltstack 1176 169 #define __NR_rt_sigaction 1177 170 #define __NR_rt_sigpending 1178 171 #define __NR_rt_sigprocmask 1179 172 #define __NR_rt_sigqueueinfo 1180 173 #define __NR_rt_sigreturn 1181 174 #define __NR_rt_sigsuspend 1182 175 #define __NR_rt_sigtimedwait 1183 176 #define __NR_getcwd 1184 177 #define __NR_capget 1185 178 #define __NR_capset 1186 179 #define __NR_sendfile 1187 180 #define __NR_getpmsg 1188 181 #define __NR_putpmsg 1189 182 #define __NR_socket 1190 183 #define __NR_bind 1191 184 #define __NR_connect 1192 185 #define __NR_listen 1193 186 #define __NR_accept 1194 187 #define __NR_getsockname 1195 188 #define __NR_getpeername 1196 189 #define __NR_socketpair 1197 190 #define __NR_send 1198 191 #define __NR_sendto 1199 192 #define __NR_recv 1200 193 #define __NR_recvfrom 1201 194 #define __NR_shutdown 1202 195 #define __NR_setsockopt 1203 196 #define __NR_getsockopt 1204 197 #define __NR_sendmsg 1205 198 #define __NR_recvmsg 1206 199 #define __NR_pivot_root 1207 200 #define __NR_mincore 1208 201 #define __NR_madvise 1209 202 #define __NR_stat 1210 203 #define __NR_lstat 1211 204 #define __NR_fstat 1212 205 #define __NR_clone2 1213 206 #define __NR_getdents64 1214 207 #define __NR_getunwind 1215 208 #define __NR_readahead 1216 209 #define __NR_setxattr 1217 210 #define __NR_lsetxattr 1218 211 #define __NR_fsetxattr 1219 212 #define __NR_getxattr 1220 213 #define __NR_lgetxattr 1221 214 #define __NR_fgetxattr 1222 215 #define __NR_listxattr 1223 216 #define __NR_llistxattr 1224 217 #define __NR_flistxattr 1225 218 #define __NR_removexattr 1226 219 #define __NR_lremovexattr 1227 220 #define __NR_fremovexattr 1228 221 #define __NR_tkill 1229 222 #define __NR_futex 1230 223 #define __NR_sched_setaffinity 1231 224 #define __NR_sched_getaffinity 1232 225 #define __NR_set_tid_address 1233 226 #define __NR_fadvise64 1234 227 #define __NR_tgkill 1235 228 #define __NR_exit_group 1236 229 #define __NR_lookup_dcookie 1237 230 #define __NR_io_setup 1238 231 #define __NR_io_destroy 1239 232 #define __NR_io_getevents 1240 233 #define __NR_io_submit 1241 234 #define __NR_io_cancel 1242 235 #define __NR_epoll_create 1243 236 #define __NR_epoll_ctl 1244 237 #define __NR_epoll_wait 1245 238 #define __NR_restart_syscall 1246 239 #define __NR_semtimedop 1247 240 #define __NR_timer_create 1248 241 #define __NR_timer_settime 1249 242 #define __NR_timer_gettime 1250 243 #define __NR_timer_getoverrun 1251 244 #define __NR_timer_delete 1252 245 #define __NR_clock_settime 1253 246 #define __NR_clock_gettime 1254 247 #define __NR_clock_getres 1255 248 #define __NR_clock_nanosleep 1256 249 #define __NR_fstatfs64 1257 250 #define __NR_statfs64 1258 251 #define __NR_mbind 1259 252 #define __NR_get_mempolicy 1260 253 #define __NR_set_mempolicy 1261 254 #define __NR_mq_open 1262 255 #define __NR_mq_unlink 1263 256 #define __NR_mq_timedsend 1264 257 #define __NR_mq_timedreceive 1265 258 #define __NR_mq_notify 1266 259 #define __NR_mq_getsetattr 1267 260 #define __NR_kexec_load 1268 261 #define __NR_vserver 1269 262 #define __NR_waitid 1270 263 #define __NR_add_key 1271 264 #define __NR_request_key 1272 265 #define __NR_keyctl 1273 266 #define __NR_ioprio_set 1274 267 #define __NR_ioprio_get 1275 268 #define __NR_move_pages 1276 269 #define __NR_inotify_init 1277 270 #define __NR_inotify_add_watch 1278 271 #define __NR_inotify_rm_watch 1279 272 #define __NR_migrate_pages 1280 273 #define __NR_openat 1281 274 #define __NR_mkdirat 1282 275 #define __NR_mknodat 1283 276 #define __NR_fchownat 1284 277 #define __NR_futimesat 1285 278 #define __NR_newfstatat 1286 279 #define __NR_unlinkat 1287 280 #define __NR_renameat 1288 281 #define __NR_linkat 1289 282 #define __NR_symlinkat 1290 283 #define __NR_readlinkat 1291 284 #define __NR_fchmodat 1292 285 #define __NR_faccessat 1293 286 #define __NR_pselect6 1294 287 #define __NR_ppoll 1295 288 #define __NR_unshare 1296 289 #define __NR_splice 1297 290 #define __NR_set_robust_list 1298 291 #define __NR_get_robust_list 1299 292 #define __NR_sync_file_range 1300 293 #define __NR_tee 1301 294 #define __NR_vmsplice 1302 295 #define __NR_fallocate 1303 296 #define __NR_getcpu 1304 297 #define __NR_epoll_pwait 1305 298 #define __NR_utimensat 1306 299 #define __NR_signalfd 1307 300 #define __NR_timerfd 1308 301 #define __NR_eventfd 1309 302 #define __NR_timerfd_create 1310 303 #define __NR_timerfd_settime 1311 304 #define __NR_timerfd_gettime 1312 305 #define __NR_signalfd4 1313 306 #define __NR_eventfd2 1314 307 #define __NR_epoll_create1 1315 308 #define __NR_dup3 1316 309 #define __NR_pipe2 1317 310 #define __NR_inotify_init1 1318 311 #define __NR_preadv 1319 312 #define __NR_pwritev 1320 313 #define __NR_rt_tgsigqueueinfo 1321 314 #define __NR_recvmmsg 1322 315 316 #ifdef __KERNEL__ 317 318 319 #define NR_syscalls 299 /* length of syscall table */ 320 321 /* 322 * The following defines stop scripts/checksyscalls.sh from complaining about 323 * unimplemented system calls. Glibc provides for each of these by using 324 * more modern equivalent system calls. 325 */ 326 #define __IGNORE_fork /* clone() */ 327 #define __IGNORE_time /* gettimeofday() */ 328 #define __IGNORE_alarm /* setitimer(ITIMER_REAL, ... */ 329 #define __IGNORE_pause /* rt_sigprocmask(), rt_sigsuspend() */ 330 #define __IGNORE_utime /* utimes() */ 331 #define __IGNORE_getpgrp /* getpgid() */ 332 #define __IGNORE_vfork /* clone() */ 333 #define __IGNORE_umount2 /* umount() */ 334 335 #define __ARCH_WANT_SYS_RT_SIGACTION 336 #define __ARCH_WANT_SYS_RT_SIGSUSPEND 337 338 #ifdef CONFIG_IA32_SUPPORT 339 # define __ARCH_WANT_SYS_FADVISE64 340 # define __ARCH_WANT_SYS_GETPGRP 341 # define __ARCH_WANT_SYS_LLSEEK 342 # define __ARCH_WANT_SYS_NICE 343 # define __ARCH_WANT_SYS_OLD_GETRLIMIT 344 # define __ARCH_WANT_SYS_OLDUMOUNT 345 # define __ARCH_WANT_SYS_PAUSE 346 # define __ARCH_WANT_SYS_SIGPENDING 347 # define __ARCH_WANT_SYS_SIGPROCMASK 348 # define __ARCH_WANT_COMPAT_SYS_RT_SIGSUSPEND 349 # define __ARCH_WANT_COMPAT_SYS_TIME 350 #endif 351 352 #if !defined(__ASSEMBLY__) && !defined(ASSEMBLER) 353 354 #include <linux/types.h> 355 #include <linux/linkage.h> 356 #include <linux/compiler.h> 357 358 extern long __ia64_syscall (long a0, long a1, long a2, long a3, long a4, long nr); 359 360 asmlinkage unsigned long sys_mmap( 361 unsigned long addr, unsigned long len, 362 int prot, int flags, 363 int fd, long off); 364 asmlinkage unsigned long sys_mmap2( 365 unsigned long addr, unsigned long len, 366 int prot, int flags, 367 int fd, long pgoff); 368 struct pt_regs; 369 struct sigaction; 370 long sys_execve(char __user *filename, char __user * __user *argv, 371 char __user * __user *envp, struct pt_regs *regs); 372 asmlinkage long sys_ia64_pipe(void); 373 asmlinkage long sys_rt_sigaction(int sig, 374 const struct sigaction __user *act, 375 struct sigaction __user *oact, 376 size_t sigsetsize); 377 378 /* 379 * "Conditional" syscalls 380 * 381 * Note, this macro can only be used in the file which defines sys_ni_syscall, i.e., in 382 * kernel/sys_ni.c. This version causes warnings because the declaration isn't a 383 * proper prototype, but we can't use __typeof__ either, because not all cond_syscall() 384 * declarations have prototypes at the moment. 385 */ 386 #define cond_syscall(x) asmlinkage long x (void) __attribute__((weak,alias("sys_ni_syscall"))) 387 388 #endif /* !__ASSEMBLY__ */ 389 #endif /* __KERNEL__ */ 390 #endif /* _ASM_IA64_UNISTD_H */ 391