diff options
author | Markos Chandras <markos.chandras@imgtec.com> | 2014-01-22 14:40:02 +0000 |
---|---|---|
committer | Ralf Baechle <ralf@linux-mips.org> | 2014-03-26 23:09:08 +0100 |
commit | 9d37c405ed7e4bb10798c37ef4e642b682425c4e (patch) | |
tree | 78769bc0db8669af7e51832412908b3af3ff351e /arch/mips/kernel/scall64-n32.S | |
parent | 1225eb825208b529fd4c01d07faf9db48e68cd33 (diff) | |
download | talos-op-linux-9d37c405ed7e4bb10798c37ef4e642b682425c4e.tar.gz talos-op-linux-9d37c405ed7e4bb10798c37ef4e642b682425c4e.zip |
MIPS: kernel: scalls: Skip the syscall if denied by the seccomp filter
Signed-off-by: Markos Chandras <markos.chandras@imgtec.com>
Reviewed-by: Paul Burton <paul.burton@imgtec.com>
Reviewed-by: James Hogan <james.hogan@imgtec.com>
Cc: linux-mips@linux-mips.org
Patchwork: https://patchwork.linux-mips.org/patch/6399/
Signed-off-by: Ralf Baechle <ralf@linux-mips.org>
Diffstat (limited to 'arch/mips/kernel/scall64-n32.S')
-rw-r--r-- | arch/mips/kernel/scall64-n32.S | 4 |
1 files changed, 3 insertions, 1 deletions
diff --git a/arch/mips/kernel/scall64-n32.S b/arch/mips/kernel/scall64-n32.S index f7e5b72cf481..b6e15861bd1b 100644 --- a/arch/mips/kernel/scall64-n32.S +++ b/arch/mips/kernel/scall64-n32.S @@ -74,6 +74,8 @@ n32_syscall_trace_entry: move a0, sp jal syscall_trace_enter + bltz v0, 2f # seccomp failed? Skip syscall + move t0, s0 RESTORE_STATIC ld a0, PT_R4(sp) # Restore argument registers @@ -94,7 +96,7 @@ n32_syscall_trace_entry: sd t1, PT_R0(sp) # save it for syscall restarting 1: sd v0, PT_R2(sp) # result - j syscall_exit +2: j syscall_exit not_n32_scall: /* This is not an n32 compatibility syscall, pass it on to |