1 #ifndef _ASM_X86_UNISTD_H 2 #define _ASM_X86_UNISTD_H 1 3 4 /* x32 syscall flag bit */ 5 #define __X32_SYSCALL_BIT 0x40000000 6 7 #ifdef __KERNEL__ 8 9 # ifdef CONFIG_X86_X32_ABI 10 # define __SYSCALL_MASK (~(__X32_SYSCALL_BIT)) 11 # else 12 # define __SYSCALL_MASK (~0) 13 # endif 14 15 # ifdef CONFIG_X86_32 16 17 # include <asm/unistd_32.h> 18 # define __ARCH_WANT_STAT64 19 # define __ARCH_WANT_SYS_IPC 20 # define __ARCH_WANT_SYS_OLD_MMAP 21 # define __ARCH_WANT_SYS_OLD_SELECT 22 23 # else 24 25 # include <asm/unistd_64.h> 26 # include <asm/unistd_64_x32.h> 27 # define __ARCH_WANT_COMPAT_SYS_TIME 28 29 # endif 30 31 # define __ARCH_WANT_OLD_READDIR 32 # define __ARCH_WANT_OLD_STAT 33 # define __ARCH_WANT_SYS_ALARM 34 # define __ARCH_WANT_SYS_FADVISE64 35 # define __ARCH_WANT_SYS_GETHOSTNAME 36 # define __ARCH_WANT_SYS_GETPGRP 37 # define __ARCH_WANT_SYS_LLSEEK 38 # define __ARCH_WANT_SYS_NICE 39 # define __ARCH_WANT_SYS_OLDUMOUNT 40 # define __ARCH_WANT_SYS_OLD_GETRLIMIT 41 # define __ARCH_WANT_SYS_OLD_UNAME 42 # define __ARCH_WANT_SYS_PAUSE 43 # define __ARCH_WANT_SYS_RT_SIGACTION 44 # define __ARCH_WANT_SYS_RT_SIGSUSPEND 45 # define __ARCH_WANT_SYS_SGETMASK 46 # define __ARCH_WANT_SYS_SIGNAL 47 # define __ARCH_WANT_SYS_SIGPENDING 48 # define __ARCH_WANT_SYS_SIGPROCMASK 49 # define __ARCH_WANT_SYS_SOCKETCALL 50 # define __ARCH_WANT_SYS_TIME 51 # define __ARCH_WANT_SYS_UTIME 52 # define __ARCH_WANT_SYS_WAITPID 53 # define __ARCH_WANT_SYS_EXECVE 54 55 /* 56 * "Conditional" syscalls 57 * 58 * What we want is __attribute__((weak,alias("sys_ni_syscall"))), 59 * but it doesn't work on all toolchains, so we just do it by hand 60 */ 61 # define cond_syscall(x) asm(".weak\t" #x "\n\t.set\t" #x ",sys_ni_syscall") 62 63 #else 64 # ifdef __i386__ 65 # include <asm/unistd_32.h> 66 # elif defined(__ILP32__) 67 # include <asm/unistd_x32.h> 68 # else 69 # include <asm/unistd_64.h> 70 # endif 71 #endif 72 73 #endif /* _ASM_X86_UNISTD_H */ 74