Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1752869AbcJKKnL (ORCPT ); Tue, 11 Oct 2016 06:43:11 -0400 Received: from mailapp02.imgtec.com ([217.156.133.132]:65400 "EHLO mailapp01.imgtec.com" rhost-flags-OK-OK-OK-FAIL) by vger.kernel.org with ESMTP id S1752684AbcJKKnI (ORCPT ); Tue, 11 Oct 2016 06:43:08 -0400 From: Marcin Nowakowski To: CC: , , , Marcin Nowakowski , Ingo Molnar Subject: [PATCH v3 04/11] syscall/tracing: allow arch to override syscall_get_nr for ftrace Date: Tue, 11 Oct 2016 12:42:49 +0200 Message-ID: <1476182576-15247-5-git-send-email-marcin.nowakowski@imgtec.com> X-Mailer: git-send-email 2.7.4 In-Reply-To: <1476182576-15247-1-git-send-email-marcin.nowakowski@imgtec.com> References: <1476182576-15247-1-git-send-email-marcin.nowakowski@imgtec.com> MIME-Version: 1.0 Content-Type: text/plain X-Originating-IP: [10.80.2.5] Sender: linux-kernel-owner@vger.kernel.org List-ID: X-Mailing-List: linux-kernel@vger.kernel.org Content-Length: 1087 Lines: 33 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 Cc: Steven Rostedt Cc: Ingo Molnar --- 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