summaryrefslogtreecommitdiffstats
path: root/arch/arm64/kernel/entry.S
diff options
context:
space:
mode:
authorAKASHI Takahiro2014-04-30 11:51:29 +0200
committerCatalin Marinas2014-05-12 17:43:28 +0200
commit449f81a4da4d99980064943d504bb19d07e86aec (patch)
treeaeeef0f1054efa57e68a7ec71c5cc614796a014a /arch/arm64/kernel/entry.S
parentarm64: debug: avoid accessing mdscr_el1 on fault paths where possible (diff)
downloadkernel-qcow2-linux-449f81a4da4d99980064943d504bb19d07e86aec.tar.gz
kernel-qcow2-linux-449f81a4da4d99980064943d504bb19d07e86aec.tar.xz
kernel-qcow2-linux-449f81a4da4d99980064943d504bb19d07e86aec.zip
arm64: make a single hook to syscall_trace() for all syscall features
Currently syscall_trace() is called only for ptrace. With additional TIF_xx flags defined, it is now called in all the cases of audit, ftrace and seccomp in addition to ptrace. Acked-by: Richard Guy Briggs <rgb@redhat.com> Acked-by: Will Deacon <will.deacon@arm.com> Signed-off-by: AKASHI Takahiro <takahiro.akashi@linaro.org> Signed-off-by: Will Deacon <will.deacon@arm.com> Signed-off-by: Catalin Marinas <catalin.marinas@arm.com>
Diffstat (limited to 'arch/arm64/kernel/entry.S')
-rw-r--r--arch/arm64/kernel/entry.S5
1 files changed, 3 insertions, 2 deletions
diff --git a/arch/arm64/kernel/entry.S b/arch/arm64/kernel/entry.S
index e8b23a3b68d0..be95f3544ce4 100644
--- a/arch/arm64/kernel/entry.S
+++ b/arch/arm64/kernel/entry.S
@@ -610,8 +610,9 @@ el0_svc_naked: // compat entry point
stp x0, scno, [sp, #S_ORIG_X0] // save the original x0 and syscall number
enable_dbg_and_irq
- ldr x16, [tsk, #TI_FLAGS] // check for syscall tracing
- tbnz x16, #TIF_SYSCALL_TRACE, __sys_trace // are we tracing syscalls?
+ ldr x16, [tsk, #TI_FLAGS] // check for syscall hooks
+ tst x16, #_TIF_SYSCALL_WORK
+ b.ne __sys_trace
adr lr, ret_fast_syscall // return address
cmp scno, sc_nr // check upper syscall limit
b.hs ni_sys