summaryrefslogtreecommitdiffstats
path: root/include/linux/compat.h
diff options
context:
space:
mode:
Diffstat (limited to 'include/linux/compat.h')
-rw-r--r--include/linux/compat.h12
1 files changed, 11 insertions, 1 deletions
diff --git a/include/linux/compat.h b/include/linux/compat.h
index 8a9643857c4a..48a321ae3d19 100644
--- a/include/linux/compat.h
+++ b/include/linux/compat.h
@@ -32,7 +32,7 @@
#endif
#define COMPAT_SYSCALL_DEFINE0(name) \
- asmlinkage long compat_sys_##name(void)
+ asmlinkage long compat_sys_i86_##sname(void)
#define COMPAT_SYSCALL_DEFINE1(name, ...) \
COMPAT_SYSCALL_DEFINEx(1, _##name, __VA_ARGS__)
@@ -56,6 +56,16 @@
{ \
return C_SYSC##name(__MAP(x,__SC_DELOUSE,__VA_ARGS__)); \
} \
+ asmlinkage long compat_sys_i86##name(struct pt_regs *regs) \
+ { \
+ return compat_SyS##name(__MAP(x,__SC_ARGS \
+ ,,(unsigned int)regs->bx \
+ ,,(unsigned int)regs->cx \
+ ,,(unsigned int)regs->dx \
+ ,,(unsigned int)regs->si \
+ ,,(unsigned int)regs->di \
+ ,,(unsigned int)regs->bp)); \
+ } \
static inline long C_SYSC##name(__MAP(x,__SC_DECL,__VA_ARGS__))
#ifndef compat_user_stack_pointer