Some architectures modify syscall numbers to indicate ABI used and as a result syscall number as returned by syscall_get_nr does not correspond to the syscall number used inside the kernel. Allow an arch to provide a separate implementation for ftrace that returns the 'real' syscall number from the regs provided. This will be used by x86 in a follow-up change. Signed-off-by: Marcin Nowakowski <marcin.nowakowski@xxxxxxxxxx> Cc: Steven Rostedt <rostedt@xxxxxxxxxxx> Cc: Ingo Molnar <mingo@xxxxxxxxxx> --- kernel/trace/trace_syscalls.c | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/kernel/trace/trace_syscalls.c b/kernel/trace/trace_syscalls.c index 409f83e..0ab9b90 100644 --- a/kernel/trace/trace_syscalls.c +++ b/kernel/trace/trace_syscalls.c @@ -74,7 +74,11 @@ static inline bool trace_is_compat_syscall(struct pt_regs *regs) static inline int trace_get_syscall_nr(struct task_struct *task, struct pt_regs *regs) { +#ifdef arch_trace_syscall_get_nr + return arch_trace_syscall_get_nr(task, regs); +#else return syscall_get_nr(task, regs); +#endif } -- 2.7.4 -- To unsubscribe from this list: send the line "unsubscribe linux-api" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html