generic sys_fork / sys_vfork / sys_clone
[cascardo/linux.git] / arch / mips / include / asm / unistd.h
1 /*
2  * This file is subject to the terms and conditions of the GNU General Public
3  * License.  See the file "COPYING" in the main directory of this archive
4  * for more details.
5  *
6  * Copyright (C) 1995, 96, 97, 98, 99, 2000 by Ralf Baechle
7  * Copyright (C) 1999, 2000 Silicon Graphics, Inc.
8  *
9  * Changed system calls macros _syscall5 - _syscall7 to push args 5 to 7 onto
10  * the stack. Robin Farine for ACN S.A, Copyright (C) 1996 by ACN S.A
11  */
12 #ifndef _ASM_UNISTD_H
13 #define _ASM_UNISTD_H
14
15 #include <uapi/asm/unistd.h>
16
17
18 #ifndef __ASSEMBLY__
19
20 #define __ARCH_OMIT_COMPAT_SYS_GETDENTS64
21 #define __ARCH_WANT_OLD_READDIR
22 #define __ARCH_WANT_SYS_ALARM
23 #define __ARCH_WANT_SYS_GETHOSTNAME
24 #define __ARCH_WANT_SYS_IPC
25 #define __ARCH_WANT_SYS_PAUSE
26 #define __ARCH_WANT_SYS_SGETMASK
27 #define __ARCH_WANT_SYS_UTIME
28 #define __ARCH_WANT_SYS_WAITPID
29 #define __ARCH_WANT_SYS_SOCKETCALL
30 #define __ARCH_WANT_SYS_GETPGRP
31 #define __ARCH_WANT_SYS_LLSEEK
32 #define __ARCH_WANT_SYS_NICE
33 #define __ARCH_WANT_SYS_OLD_GETRLIMIT
34 #define __ARCH_WANT_SYS_OLD_UNAME
35 #define __ARCH_WANT_SYS_OLDUMOUNT
36 #define __ARCH_WANT_SYS_SIGPENDING
37 #define __ARCH_WANT_SYS_SIGPROCMASK
38 #define __ARCH_WANT_SYS_RT_SIGACTION
39 # ifdef CONFIG_32BIT
40 #  define __ARCH_WANT_STAT64
41 #  define __ARCH_WANT_SYS_TIME
42 # endif
43 # ifdef CONFIG_MIPS32_O32
44 #  define __ARCH_WANT_COMPAT_SYS_TIME
45 # endif
46
47 /* whitelists for checksyscalls */
48 #define __IGNORE_select
49 #define __IGNORE_vfork
50 #define __IGNORE_time
51 #define __IGNORE_uselib
52 #define __IGNORE_fadvise64_64
53 #define __IGNORE_getdents64
54 #if _MIPS_SIM == _MIPS_SIM_NABI32
55 #define __IGNORE_truncate64
56 #define __IGNORE_ftruncate64
57 #define __IGNORE_stat64
58 #define __IGNORE_lstat64
59 #define __IGNORE_fstat64
60 #define __IGNORE_fstatat64
61 #endif
62
63 #endif /* !__ASSEMBLY__ */
64
65 /*
66  * "Conditional" syscalls
67  *
68  * What we want is __attribute__((weak,alias("sys_ni_syscall"))),
69  * but it doesn't work on all toolchains, so we just do it by hand
70  */
71 #define cond_syscall(x) asm(".weak\t" #x "\n" #x "\t=\tsys_ni_syscall")
72
73 #endif /* _ASM_UNISTD_H */