summaryrefslogtreecommitdiffstats
path: root/arch/tile/kernel/compat.c
diff options
context:
space:
mode:
authorChris Metcalf <cmetcalf@tilera.com>2010-10-14 14:34:33 -0400
committerChris Metcalf <cmetcalf@tilera.com>2010-10-14 14:34:33 -0400
commitd929b6aeaacbe78cbfef4a80e3eed1bf0464d984 (patch)
tree5f121a845d616a3926768c2fa1b25c4ae417d9c2 /arch/tile/kernel/compat.c
parentce0ecc8abfa9904e27a5f3ac4dd83398b134278d (diff)
arch/tile: Use <asm-generic/syscalls.h>
With this change we now include <asm-generic/syscalls.h> into the "tile" version of the header. To take full advantage of the prototypes there, we also change our naming convention for "struct pt_regs *" syscalls so that, e.g., _sys_execve() is the "true" syscall entry, which sets the appropriate register to point to the pt_regs before calling sys_execve(). While doing this I realized I no longer needed the fork and vfork entry point stubs, since those functions aren't in the generic syscall ABI, so I removed them as well. Signed-off-by: Chris Metcalf <cmetcalf@tilera.com>
Diffstat (limited to 'arch/tile/kernel/compat.c')
-rw-r--r--arch/tile/kernel/compat.c6
1 files changed, 6 insertions, 0 deletions
diff --git a/arch/tile/kernel/compat.c b/arch/tile/kernel/compat.c
index b1e06d04155..5f24e54bf3c 100644
--- a/arch/tile/kernel/compat.c
+++ b/arch/tile/kernel/compat.c
@@ -157,6 +157,12 @@ long tile_compat_sys_msgrcv(int msqid,
/* Pass full 64-bit values through ptrace. */
#define compat_sys_ptrace tile_compat_sys_ptrace
+/* Call the trampolines to manage pt_regs where necessary. */
+#define compat_sys_execve _compat_sys_execve
+#define compat_sys_sigaltstack _compat_sys_sigaltstack
+#define compat_sys_rt_sigreturn _compat_sys_rt_sigreturn
+#define sys_clone _sys_clone
+
/*
* Note that we can't include <linux/unistd.h> here since the header
* guard will defeat us; <asm/unistd.h> checks for __SYSCALL as well.