blob: 21f77b89e47a6aeea5ab00c01c28db2d54f0520b [file] [log] [blame]
H. Peter Anvin303395a2011-11-11 16:07:41 -08001#ifndef _ASM_X86_UNISTD_H
2#define _ASM_X86_UNISTD_H 1
3
Thomas Gleixner96a388d2007-10-11 11:20:03 +02004#ifdef __KERNEL__
Adrian Bunkb11caa72008-04-20 22:02:17 +03005# ifdef CONFIG_X86_32
H. Peter Anvin303395a2011-11-11 16:07:41 -08006
7# include <asm/unistd_32.h>
8# define __ARCH_WANT_IPC_PARSE_VERSION
9# define __ARCH_WANT_STAT64
H. Peter Anvin4f2f81a2012-01-19 12:41:25 -080010# define __ARCH_WANT_SYS_IPC
H. Peter Anvin303395a2011-11-11 16:07:41 -080011# define __ARCH_WANT_SYS_OLD_MMAP
12# define __ARCH_WANT_SYS_OLD_SELECT
13
Adrian Bunkb11caa72008-04-20 22:02:17 +030014# else
H. Peter Anvin303395a2011-11-11 16:07:41 -080015
16# include <asm/unistd_64.h>
17# define __ARCH_WANT_COMPAT_SYS_TIME
18
Adrian Bunkb11caa72008-04-20 22:02:17 +030019# endif
H. Peter Anvin303395a2011-11-11 16:07:41 -080020
21# define __ARCH_WANT_OLD_READDIR
22# define __ARCH_WANT_OLD_STAT
23# define __ARCH_WANT_SYS_ALARM
24# define __ARCH_WANT_SYS_FADVISE64
25# define __ARCH_WANT_SYS_GETHOSTNAME
26# define __ARCH_WANT_SYS_GETPGRP
27# define __ARCH_WANT_SYS_LLSEEK
28# define __ARCH_WANT_SYS_NICE
29# define __ARCH_WANT_SYS_OLDUMOUNT
30# define __ARCH_WANT_SYS_OLD_GETRLIMIT
31# define __ARCH_WANT_SYS_OLD_UNAME
32# define __ARCH_WANT_SYS_PAUSE
33# define __ARCH_WANT_SYS_RT_SIGACTION
34# define __ARCH_WANT_SYS_RT_SIGSUSPEND
35# define __ARCH_WANT_SYS_SGETMASK
36# define __ARCH_WANT_SYS_SIGNAL
37# define __ARCH_WANT_SYS_SIGPENDING
38# define __ARCH_WANT_SYS_SIGPROCMASK
39# define __ARCH_WANT_SYS_SOCKETCALL
40# define __ARCH_WANT_SYS_TIME
41# define __ARCH_WANT_SYS_UTIME
42# define __ARCH_WANT_SYS_WAITPID
43
44/*
45 * "Conditional" syscalls
46 *
47 * What we want is __attribute__((weak,alias("sys_ni_syscall"))),
48 * but it doesn't work on all toolchains, so we just do it by hand
49 */
50# define cond_syscall(x) asm(".weak\t" #x "\n\t.set\t" #x ",sys_ni_syscall")
51
Adrian Bunkb11caa72008-04-20 22:02:17 +030052#else
53# ifdef __i386__
H. Peter Anvin303395a2011-11-11 16:07:41 -080054# include <asm/unistd_32.h>
Thomas Gleixner96a388d2007-10-11 11:20:03 +020055# else
H. Peter Anvin303395a2011-11-11 16:07:41 -080056# include <asm/unistd_64.h>
Thomas Gleixner96a388d2007-10-11 11:20:03 +020057# endif
58#endif
H. Peter Anvin303395a2011-11-11 16:07:41 -080059
60#endif /* _ASM_X86_UNISTD_H */