+#define INDIRECT_SYSCALL(regs) (regs)-rax
+#define INDIRECT_SYSCALL32(regs) (regs)-eax
+
+#define CALL_INDIRECT(regs) \
+ ({ extern long (*sys_call_table[]) (__u64, __u64, __u64, __u64, __u64,
__u64); \
+ sys_call_table[INDIRECT_SYSCALL(regs)] ((regs)-rdi, (regs)-rsi, \
+
-BEGIN PGP SIGNED MESSAGE-
Hash: SHA1
Heiko Carstens wrote:
All these macros could be functions, or? Would give us some type checking
and avoids the capital letters.
Should be possible now. I didn't do it initially since the macro used
the macro for the largest syscall number. That
This part adds support for sys_indirect on x86 and x86-64.
arch/x86/ia32/ia32entry.S |2 ++
arch/x86/ia32/sys_ia32.c | 31 +++
arch/x86/kernel/syscall_table_32.S |1 +
include/asm-x86/indirect.h |5 +
3 matches
Mail list logo