diff options
author | Will Deacon <will.deacon@arm.com> | 2014-06-27 17:01:47 +0100 |
---|---|---|
committer | Russell King <rmk+kernel@arm.linux.org.uk> | 2014-06-29 10:29:35 +0100 |
commit | 42309ab450b608ddcfafa90e4cfa93a5001ecfba (patch) | |
tree | fb60021f23adfdff7d525d88e8b6c50f14f138f0 /virt | |
parent | 6980c3e2514e5ae36b43ec8302f4920d6e3c9434 (diff) |
ARM: 8087/1: ptrace: reload syscall number after secure_computing() check
On the syscall tracing path, we call out to secure_computing() to allow
seccomp to check the syscall number being attempted. As part of this, a
SIGTRAP may be sent to the tracer and the syscall could be re-written by
a subsequent SET_SYSCALL ptrace request. Unfortunately, this new syscall
is ignored by the current code unless TIF_SYSCALL_TRACE is also set on
the current thread.
This patch slightly reworks the enter path of the syscall tracing code
so that we always reload the syscall number from
current_thread_info()->syscall after the potential ptrace traps.
Acked-by: Kees Cook <keescook@chromium.org>
Tested-by: Kees Cook <keescook@chromium.org>
Signed-off-by: Will Deacon <will.deacon@arm.com>
Signed-off-by: Russell King <rmk+kernel@arm.linux.org.uk>
Diffstat (limited to 'virt')
0 files changed, 0 insertions, 0 deletions