Merge branch 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/signal
Linus Torvalds [Wed, 1 May 2013 14:21:43 +0000 (07:21 -0700)]
Pull compat cleanup from Al Viro:
 "Mostly about syscall wrappers this time; there will be another pile
  with patches in the same general area from various people, but I'd
  rather push those after both that and vfs.git pile are in."

* 'for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/viro/signal:
  syscalls.h: slightly reduce the jungles of macros
  get rid of union semop in sys_semctl(2) arguments
  make do_mremap() static
  sparc: no need to sign-extend in sync_file_range() wrapper
  ppc compat wrappers for add_key(2) and request_key(2) are pointless
  x86: trim sys_ia32.h
  x86: sys32_kill and sys32_mprotect are pointless
  get rid of compat_sys_semctl() and friends in case of ARCH_WANT_OLD_COMPAT_IPC
  merge compat sys_ipc instances
  consolidate compat lookup_dcookie()
  convert vmsplice to COMPAT_SYSCALL_DEFINE
  switch getrusage() to COMPAT_SYSCALL_DEFINE
  switch epoll_pwait to COMPAT_SYSCALL_DEFINE
  convert sendfile{,64} to COMPAT_SYSCALL_DEFINE
  switch signalfd{,4}() to COMPAT_SYSCALL_DEFINE
  make SYSCALL_DEFINE<n>-generated wrappers do asmlinkage_protect
  make HAVE_SYSCALL_WRAPPERS unconditional
  consolidate cond_syscall and SYSCALL_ALIAS declarations
  teach SYSCALL_DEFINE<n> how to deal with long long/unsigned long long
  get rid of duplicate logics in __SC_....[1-6] definitions

22 files changed:
1  2 
arch/Kconfig
arch/alpha/Kconfig
arch/mips/Kconfig
arch/powerpc/Kconfig
arch/powerpc/include/asm/systbl.h
arch/powerpc/include/asm/unistd.h
arch/s390/Kconfig
arch/sparc/Kconfig
arch/tile/Kconfig
arch/tile/kernel/compat.c
fs/aio.c
fs/compat.c
fs/eventpoll.c
fs/read_write.c
fs/splice.c
include/linux/compat.h
include/linux/mm.h
kernel/compat.c
kernel/exit.c
kernel/fork.c
kernel/sys.c
mm/nommu.c

diff --cc arch/Kconfig
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
Simple merge
@@@ -132,10 -131,9 +132,9 @@@ config S39
        select HAVE_PERF_EVENTS
        select HAVE_REGS_AND_STACK_ACCESS_API
        select HAVE_SYSCALL_TRACEPOINTS
-       select HAVE_SYSCALL_WRAPPERS
        select HAVE_UID16 if 32BIT
        select HAVE_VIRT_CPU_ACCOUNTING
 -      select HAVE_VIRT_TO_BUS
 +      select VIRT_TO_BUS
        select INIT_ALL_POSSIBLE
        select KTIME_SCALAR if 32BIT
        select MODULES_USE_ELF_RELA
Simple merge
@@@ -16,10 -16,8 +16,9 @@@ config TIL
        select GENERIC_PENDING_IRQ if SMP
        select GENERIC_IRQ_SHOW
        select HAVE_DEBUG_BUGVERBOSE
-       select HAVE_SYSCALL_WRAPPERS if TILEGX
 -      select HAVE_VIRT_TO_BUS
 +      select VIRT_TO_BUS
        select SYS_HYPERVISOR
 +      select ARCH_HAS_DEBUG_STRICT_USER_COPY_CHECKS
        select ARCH_HAVE_NMI_SAFE_CMPXCHG
        select GENERIC_CLOCKEVENTS
        select MODULES_USE_ELF_RELA
@@@ -56,15 -54,9 +56,9 @@@ COMPAT_SYSCALL_DEFINE6(pwrite64, unsign
        return sys_pwrite64(fd, ubuf, count, ((loff_t)high << 32) | low);
  }
  
- COMPAT_SYSCALL_DEFINE4(lookup_dcookie, u32, low, u32, high,
-                        char __user *, buf, size_t, len)
- {
-       return sys_lookup_dcookie(((loff_t)high << 32) | low, buf, len);
- }
 -long compat_sys_sync_file_range2(int fd, unsigned int flags,
 -                               u32 offset_lo, u32 offset_hi,
 -                               u32 nbytes_lo, u32 nbytes_hi)
 +COMPAT_SYSCALL_DEFINE6(sync_file_range2, int, fd, unsigned int, flags,
 +                       u32, offset_lo, u32, offset_hi,
 +                       u32, nbytes_lo, u32, nbytes_hi)
  {
        return sys_sync_file_range(fd, ((loff_t)offset_hi << 32) | offset_lo,
                                   ((loff_t)nbytes_hi << 32) | nbytes_lo,
diff --cc fs/aio.c
Simple merge
diff --cc fs/compat.c
Simple merge
diff --cc fs/eventpoll.c
Simple merge
diff --cc fs/read_write.c
Simple merge
diff --cc fs/splice.c
@@@ -31,7 -31,7 +31,8 @@@
  #include <linux/security.h>
  #include <linux/gfp.h>
  #include <linux/socket.h>
+ #include <linux/compat.h>
 +#include "internal.h"
  
  /*
   * Attempt to steal a page from a pipe buffer. This should perhaps go into
Simple merge
Simple merge
diff --cc kernel/compat.c
Simple merge
diff --cc kernel/exit.c
Simple merge
diff --cc kernel/fork.c
Simple merge
diff --cc kernel/sys.c
Simple merge
diff --cc mm/nommu.c
Simple merge