Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 08d76760 authored by Linus Torvalds's avatar Linus Torvalds
Browse files
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
parents 5f568865 99e621f7
Loading
Loading
Loading
Loading
+0 −3
Original line number Original line Diff line number Diff line
@@ -157,9 +157,6 @@ config ARCH_USE_BUILTIN_BSWAP
	 instructions should set this. And it shouldn't hurt to set it
	 instructions should set this. And it shouldn't hurt to set it
	 on architectures that don't have such instructions.
	 on architectures that don't have such instructions.


config HAVE_SYSCALL_WRAPPERS
	bool

config KRETPROBES
config KRETPROBES
	def_bool y
	def_bool y
	depends on KPROBES && HAVE_KRETPROBES
	depends on KPROBES && HAVE_KRETPROBES
+0 −1
Original line number Original line Diff line number Diff line
@@ -4,7 +4,6 @@ config ALPHA
	select HAVE_AOUT
	select HAVE_AOUT
	select HAVE_IDE
	select HAVE_IDE
	select HAVE_OPROFILE
	select HAVE_OPROFILE
	select HAVE_SYSCALL_WRAPPERS
	select HAVE_PCSPKR_PLATFORM
	select HAVE_PCSPKR_PLATFORM
	select HAVE_PERF_EVENTS
	select HAVE_PERF_EVENTS
	select HAVE_DMA_ATTRS
	select HAVE_DMA_ATTRS
+3 −1
Original line number Original line Diff line number Diff line
#ifndef __ASM_LINKAGE_H
#ifndef __ASM_LINKAGE_H
#define __ASM_LINKAGE_H
#define __ASM_LINKAGE_H


/* Nothing to see here... */
#define cond_syscall(x)  asm(".weak\t" #x "\n" #x " = sys_ni_syscall")
#define SYSCALL_ALIAS(alias, name)					\
	asm ( #alias " = " #name "\n\t.globl " #alias)


#endif
#endif
+0 −12
Original line number Original line Diff line number Diff line
@@ -18,16 +18,4 @@
#define __ARCH_WANT_SYS_VFORK
#define __ARCH_WANT_SYS_VFORK
#define __ARCH_WANT_SYS_CLONE
#define __ARCH_WANT_SYS_CLONE


/* "Conditional" syscalls.  What we want is

	__attribute__((weak,alias("sys_ni_syscall")))

   but that raises the problem of what type to give the symbol.  If we use
   a prototype, it'll conflict with the definition given in this file and
   others.  If we use __typeof, we discover that not all symbols actually
   have declarations.  If we use no prototype, then we get warnings from
   -Wstrict-prototypes.  Ho hum.  */

#define cond_syscall(x)  asm(".weak\t" #x "\n" #x " = sys_ni_syscall")

#endif /* _ALPHA_UNISTD_H */
#endif /* _ALPHA_UNISTD_H */
+0 −8
Original line number Original line Diff line number Diff line
@@ -43,14 +43,6 @@
#define __ARCH_WANT_SYS_VFORK
#define __ARCH_WANT_SYS_VFORK
#define __ARCH_WANT_SYS_CLONE
#define __ARCH_WANT_SYS_CLONE


/*
 * "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")

/*
/*
 * Unimplemented (or alternatively implemented) syscalls
 * Unimplemented (or alternatively implemented) syscalls
 */
 */
Loading