BACKPORT: seccomp: Add SECCOMP_RET_TRAP
authorWill Drewry <wad@chromium.org>
Thu, 9 Feb 2012 18:01:37 +0000 (12:01 -0600)
committerGrant Grundler <grundler@google.com>
Thu, 24 May 2012 22:16:46 +0000 (15:16 -0700)
commitebf37557448c2a6540a9ccea4b57030f4a3ae6f3
treefbe4a26c87e8accb68550ba28119d0bc27973914
parent5d1edaf47c8b23b2a4308e6ec706a9dfccc1a326
BACKPORT: seccomp: Add SECCOMP_RET_TRAP

Adds a new return value to seccomp filters that triggers a SIGSYS to be
delivered with the new SYS_SECCOMP si_code.

This allows in-process system call emulation, including just specifying
an errno or cleanly dumping core, rather than just dying.

v18: - acked-by, rebase
v15: - use audit_seccomp/skip
     - pad out error spacing; clean up switch (indan@nul.nu)
v14: - n/a
v13: - rebase on to 88ebdda6159ffc15699f204c33feb3e431bf9bdc
v12: - rebase on to linux-next
v11: - clarify the comment (indan@nul.nu)
     - s/sigtrap/sigsys
v10: - use SIGSYS, syscall_get_arch, updates arch/Kconfig
       note suggested-by (though original suggestion had other behaviors)
v9:  - changes to SIGILL
v8:  - clean up based on changes to dependent patches
v7:  - introduction

Change-Id: Ic17b43e960242039054f98460e07084a15d22a43
Acked-by: Eric Paris <eparis@redhat.com>
Suggested-by: Markus Gutschke <markus@chromium.org>
Suggested-by: Julien Tinnes <jln@chromium.org>
Signed-off-by: Will Drewry <wad@chromium.org>
BUG=chromium-os:27878
TEST=none. Part of a much larger stack that really should merge together.

Change-Id: If82899f6d6bd5fedd6ee060455e224e7e722a26f
Reviewed-on: https://gerrit.chromium.org/gerrit/21367
Reviewed-by: Will Drewry <wad@chromium.org>
Tested-by: Will Drewry <wad@chromium.org>
arch/Kconfig
include/asm-generic/siginfo.h
include/linux/seccomp.h
kernel/seccomp.c