In checkin
  303395ac3b x86: Generate system call tables and unistd_*.h from tables
the feature macros in <asm/unistd.h> were unified between 32 and 64
bits.  Unfortunately 32 bits requires __ARCH_WANT_SYS_IPC and this was
inadvertently dropped.
Reported-by: Dmitry Kasatkin <dmitry.kasatkin@intel.com>
Cc: Linus Torvalds <torvalds@linux-foundation.org>
Signed-off-by: H. Peter Anvin <hpa@zytor.com>
Link: http://lkml.kernel.org/r/CALLzPKbeXN5gdngo8uYYU8mAow=XhrwBFBhKfG811f37BubQOg@mail.gmail.com
		
	
			
		
			
				
	
	
		
			60 lines
		
	
	
	
		
			1.5 KiB
			
		
	
	
	
		
			C
		
	
	
	
	
	
			
		
		
	
	
			60 lines
		
	
	
	
		
			1.5 KiB
			
		
	
	
	
		
			C
		
	
	
	
	
	
#ifndef _ASM_X86_UNISTD_H
 | 
						|
#define _ASM_X86_UNISTD_H 1
 | 
						|
 | 
						|
#ifdef __KERNEL__
 | 
						|
# ifdef CONFIG_X86_32
 | 
						|
 | 
						|
#  include <asm/unistd_32.h>
 | 
						|
#  define __ARCH_WANT_IPC_PARSE_VERSION
 | 
						|
#  define __ARCH_WANT_STAT64
 | 
						|
#  define __ARCH_WANT_SYS_IPC
 | 
						|
#  define __ARCH_WANT_SYS_OLD_MMAP
 | 
						|
#  define __ARCH_WANT_SYS_OLD_SELECT
 | 
						|
 | 
						|
# else
 | 
						|
 | 
						|
#  include <asm/unistd_64.h>
 | 
						|
#  define __ARCH_WANT_COMPAT_SYS_TIME
 | 
						|
 | 
						|
# endif
 | 
						|
 | 
						|
# define __ARCH_WANT_OLD_READDIR
 | 
						|
# define __ARCH_WANT_OLD_STAT
 | 
						|
# define __ARCH_WANT_SYS_ALARM
 | 
						|
# define __ARCH_WANT_SYS_FADVISE64
 | 
						|
# define __ARCH_WANT_SYS_GETHOSTNAME
 | 
						|
# define __ARCH_WANT_SYS_GETPGRP
 | 
						|
# define __ARCH_WANT_SYS_LLSEEK
 | 
						|
# define __ARCH_WANT_SYS_NICE
 | 
						|
# define __ARCH_WANT_SYS_OLDUMOUNT
 | 
						|
# define __ARCH_WANT_SYS_OLD_GETRLIMIT
 | 
						|
# define __ARCH_WANT_SYS_OLD_UNAME
 | 
						|
# define __ARCH_WANT_SYS_PAUSE
 | 
						|
# define __ARCH_WANT_SYS_RT_SIGACTION
 | 
						|
# define __ARCH_WANT_SYS_RT_SIGSUSPEND
 | 
						|
# define __ARCH_WANT_SYS_SGETMASK
 | 
						|
# define __ARCH_WANT_SYS_SIGNAL
 | 
						|
# define __ARCH_WANT_SYS_SIGPENDING
 | 
						|
# define __ARCH_WANT_SYS_SIGPROCMASK
 | 
						|
# define __ARCH_WANT_SYS_SOCKETCALL
 | 
						|
# define __ARCH_WANT_SYS_TIME
 | 
						|
# define __ARCH_WANT_SYS_UTIME
 | 
						|
# define __ARCH_WANT_SYS_WAITPID
 | 
						|
 | 
						|
/*
 | 
						|
 * "Conditional" syscalls
 | 
						|
 *
 | 
						|
 * What we want is __attribute__((weak,alias("sys_ni_syscall"))),
 | 
						|
 * but it doesn't work on all toolchains, so we just do it by hand
 | 
						|
 */
 | 
						|
# define cond_syscall(x) asm(".weak\t" #x "\n\t.set\t" #x ",sys_ni_syscall")
 | 
						|
 | 
						|
#else
 | 
						|
# ifdef __i386__
 | 
						|
#  include <asm/unistd_32.h>
 | 
						|
# else
 | 
						|
#  include <asm/unistd_64.h>
 | 
						|
# endif
 | 
						|
#endif
 | 
						|
 | 
						|
#endif /* _ASM_X86_UNISTD_H */
 |