BACKPORT: arm64: ptrace: allow tracer to skip a system call
If tracer modifies a syscall number to -1, this traced system call should
be skipped with a return value specified in x0.
This patch implements this semantics.
Please note:
* syscall entry tracing and syscall exit tracing (ftrace tracepoint and
audit) are always executed, if enabled, even when skipping a system call
(that is, -1).
In this way, we can avoid a potential bug where audit_syscall_entry()
might be called without audit_syscall_exit() at the previous system call
being called, that would cause OOPs in audit_syscall_entry().
Signed-off-by: AKASHI Takahiro <takahiro.akashi@linaro.org>
[will: fixed up conflict with blr rework]
Signed-off-by: Will Deacon <will.deacon@arm.com>
Bug: 28020023
Patchset: seccomp
(cherry picked from kernel/msm commit 6c552f2c72849c6f45904587d9643cfed57aee40)
Signed-off-by: Kees Cook <keescook@google.com>
Change-Id: If3ef7b7a1c08030702396842e814974486f71ea4
1 file changed