Return-Path: Received: (majordomo@vger.kernel.org) by vger.kernel.org via listexpand id S1753154AbcJNIge (ORCPT ); Fri, 14 Oct 2016 04:36:34 -0400 Received: from mailapp02.imgtec.com ([217.156.133.132]:62195 "EHLO mailapp01.imgtec.com" rhost-flags-OK-OK-OK-FAIL) by vger.kernel.org with ESMTP id S1752103AbcJNIfc (ORCPT ); Fri, 14 Oct 2016 04:35:32 -0400 From: Marcin Nowakowski To: CC: , , , Marcin Nowakowski , Ingo Molnar Subject: [PATCH v4 05/12] syscall/tracing: allow arch to override syscall_get_nr for ftrace Date: Fri, 14 Oct 2016 10:35:07 +0200 Message-ID: <1476434115-25428-6-git-send-email-marcin.nowakowski@imgtec.com> X-Mailer: git-send-email 2.7.4 In-Reply-To: <1476434115-25428-1-git-send-email-marcin.nowakowski@imgtec.com> References: <1476434115-25428-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 10c058f..24a26d3 100644 --- a/kernel/trace/trace_syscalls.c +++ b/kernel/trace/trace_syscalls.c @@ -78,7 +78,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