3 # This is a list of system calls we invoke "directly". These
4 # are generated into syscall stubs in their own C files, so the
5 # linker can do its job properly.
7 # The full description of a line is:
8 # [<[!]arch,...>] type sysname[@systype][::funcname](args)
12 # Process-related syscalls
14 <!mips,mips64,sparc,ia64> pid_t vfork()
15 <sparc> pid_t vfork@forkish()
16 <!alpha> pid_t getpid()
17 <alpha> pid_t getxpid@dual0::getpid()
18 int setpgid(pid_t, pid_t)
20 <!alpha> pid_t getppid()
21 <alpha> pid_t getxpid@dual1::getppid()
22 <!ia64> pid_t getpgrp()
25 pid_t wait4(pid_t, int *, int, struct rusage *)
26 int execve(const char *, char * const *, char * const *)
27 int setpriority(int, int, int)
28 int sched_setscheduler(pid_t, int, const struct sched_param *)
36 <!alpha> uid_t getuid()
37 <alpha> uid_t getxuid@dual0::getuid()
38 <!alpha> gid_t getgid()
39 <alpha> gid_t getxgid@dual0::getgid()
40 <!alpha> uid_t geteuid()
41 <alpha> uid_t getxuid@dual1::geteuid()
42 <!alpha> gid_t getegid()
43 <alpha> uid_t getxgid@dual1::getegid()
44 int getgroups(int, gid_t *)
45 int setgroups(size_t, const gid_t *)
46 int setreuid(uid_t, uid_t)
47 int setregid(gid_t, gid_t)
52 # Filesystem-related system calls
54 int mount(const char *, const char *, const char *, unsigned long, const void *)
55 <!alpha,ia64> int umount2(const char *, int)
56 <alpha,ia64> int umount::umount2(const char *, int)
57 <!m68k> int pivot_root(const char *, const char *)
59 int statfs(const char *, struct statfs *)
60 int fstatfs(int, struct statfs *)
61 int swapon(const char *, int)
62 int swapoff(const char *)
65 # Inode-related system calls
67 int access(const char *, int)
68 int link(const char *, const char *)
69 int unlink(const char *)
70 int chdir(const char *)
71 int rename(const char *, const char *)
72 int mknod(const char *, mode_t, dev_t)
73 int chmod(const char *, mode_t)
74 int fchmod(int, mode_t)
75 int mkdir(const char *, mode_t)
76 int rmdir(const char *)
77 <!alpha,ia64,mips,mips64> int pipe(int *)
79 int chroot(const char *)
80 int symlink(const char *, const char *)
81 int readlink(const char *, char *, size_t)
82 int stat(const char *, struct stat *)
83 int lstat(const char *, struct stat *)
84 int fstat(int, struct stat *)
85 int getdents(unsigned int, struct dirent *, unsigned int)
86 int chown(const char *, uid_t, gid_t)
87 int fchown(int, uid_t, gid_t)
88 int lchown(const char *, uid_t, gid_t)
93 ssize_t read(int, void *, size_t)
94 ssize_t write(int, const void *, size_t)
95 int open(const char *, int, mode_t)
97 off_t lseek(int, off_t, int)
100 int fcntl(int, int, long)
101 int ioctl(int, int, void *)
103 int poll(struct pollfd *, nfds_t, long)
105 int readv(int, const struct iovec *, int)
106 int writev(int, const struct iovec *, int)
107 int ftruncate(int, off_t)
113 int rt_sigaction(int, const struct sigaction *, struct sigaction *, size_t)
114 int rt_sigsuspend(const sigset_t *, size_t)
115 int rt_sigpending(sigset_t *, size_t)
116 int rt_sigprocmask(int, const sigset_t *, sigset_t *, size_t)
117 int getitimer(int, struct itimerval *)
118 int setitimer(int, const struct itimerval *, struct itimerval *)
121 # Time-related system calls
123 clock_t times(struct tms *)
124 int gettimeofday(struct timeval *, struct timezone *)
125 int settimeofday(const struct timeval *, const struct timezone *)
126 int nanosleep(const struct timespec *, struct timespec *)
131 void * brk::__brk(void *)
132 int munmap(void *, size_t)
133 void * mremap(void *, size_t, size_t, unsigned long)
134 int msync(const void *, size_t, int)
135 int mprotect(const void *, size_t, int)
140 int uname(struct utsname *)
141 int setdomainname(const char *, size_t)
142 int sethostname(const char *, size_t)
143 long init_module(void *, unsigned long, const char *)
144 long delete_module(const char *, unsigned int)
145 <!ia64> int query_module(const char *, int, void *, size_t, size_t)
146 int reboot::__reboot(int, int, int, void *)
147 int syslog::klogctl(int, char *, int)
150 # Low-level I/O (generally architecture-specific)
152 <i386,x86_64> int iopl(int)
153 <i386,x86_64> int ioperm(unsigned long, unsigned long, int)
154 <i386> int vm86(struct vm86_struct *)