aboutsummaryrefslogtreecommitdiffstats
path: root/arch/tile/kernel/sys.c
diff options
context:
space:
mode:
authorChris Metcalf <cmetcalf@tilera.com>2012-10-23 13:30:54 -0400
committerAl Viro <viro@zeniv.linux.org.uk>2012-10-23 16:23:58 -0400
commit6b14e4198c729b748a7f6d22059e6a101d2b241a (patch)
tree77668782763f74aec995899e919231e81a71d56a /arch/tile/kernel/sys.c
parent530550651fdfd548d25b6bd5ff4607803540508b (diff)
arch/tile: eliminate pt_regs trampolines for syscalls
Using the new current_pt_regs() model, we can remove some trampolines from assembly code and call directly to the C syscall implementations. rt_sigreturn() and clone() still need some assembly wrapping, but no longer are passed a pt_regs pointer. sigaltstack() and the tilepro-specific cmpxchg_badaddr() syscalls are now just straight C. Signed-off-by: Chris Metcalf <cmetcalf@tilera.com>
Diffstat (limited to 'arch/tile/kernel/sys.c')
-rw-r--r--arch/tile/kernel/sys.c8
1 files changed, 3 insertions, 5 deletions
diff --git a/arch/tile/kernel/sys.c b/arch/tile/kernel/sys.c
index 359e76f68838..02ff5c0ef775 100644
--- a/arch/tile/kernel/sys.c
+++ b/arch/tile/kernel/sys.c
@@ -106,13 +106,11 @@ SYSCALL_DEFINE6(mmap, unsigned long, addr, unsigned long, len,
106#define sys_readahead sys32_readahead 106#define sys_readahead sys32_readahead
107#endif 107#endif
108 108
109/* Call the trampolines to manage pt_regs where necessary. */ 109/* Call the assembly trampolines where necessary. */
110#define sys_sigaltstack _sys_sigaltstack 110#undef sys_rt_sigreturn
111#define sys_rt_sigreturn _sys_rt_sigreturn 111#define sys_rt_sigreturn _sys_rt_sigreturn
112#undef sys_clone
112#define sys_clone _sys_clone 113#define sys_clone _sys_clone
113#ifndef __tilegx__
114#define sys_cmpxchg_badaddr _sys_cmpxchg_badaddr
115#endif
116 114
117/* 115/*
118 * Note that we can't include <linux/unistd.h> here since the header 116 * Note that we can't include <linux/unistd.h> here since the header