kernel_optimize_test/arch
Will Drewry 5651721ede x86/vsyscall: allow seccomp filter in vsyscall=emulate
If a seccomp filter program is installed, older static binaries and
distributions with older libc implementations (glibc 2.13 and earlier)
that rely on vsyscall use will be terminated regardless of the filter
program policy when executing time, gettimeofday, or getcpu.  This is
only the case when vsyscall emulation is in use (vsyscall=emulate is the
default).

This patch emulates system call entry inside a vsyscall=emulate by
populating regs->ax and regs->orig_ax with the system call number prior
to calling into seccomp such that all seccomp-dependencies function
normally.  Additionally, system call return behavior is emulated in line
with other vsyscall entrypoints for the trace/trap cases.

[ v2: fixed ip and sp on SECCOMP_RET_TRAP/TRACE (thanks to luto@mit.edu) ]
Reported-and-tested-by: Owen Kibel <qmewlo@gmail.com>
Signed-off-by: Will Drewry <wad@chromium.org>
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
2012-07-13 14:25:55 -07:00
..
alpha
arm ARM: SoC fixes for 3.5-rc 2012-07-11 12:44:25 -07:00
avr32 fixups for signal breakage 2012-06-04 17:47:34 -04:00
blackfin Merge branch 'sched-urgent-for-linus' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip 2012-06-05 09:47:15 -07:00
c6x
cris
frv frv: Remove bogus closing parenthesis 2012-06-02 10:38:19 -04:00
h8300 h8300/uaccess: add mising __clear_user() 2012-07-11 16:04:46 -07:00
hexagon
ia64
m32r
m68k m68knommu: define a local devm_clk_get() function 2012-06-25 09:17:20 +10:00
microblaze
mips mips: pci-lantiq: Fix check for valid gpio 2012-07-05 15:02:18 +02:00
mn10300 Merge branch 'akpm' (Andrew's patch-bomb) 2012-07-11 16:06:54 -07:00
openrisc
parisc [PARISC] fix code to find libgcc 2012-06-05 14:10:23 +09:00
powerpc Merge branch 'for-upstream-master' of git://github.com/agraf/linux-2.6 2012-07-11 18:49:20 +03:00
s390
score
sh SH: Convert out[bwl] macros to inline functions 2012-07-12 13:12:13 +09:00
sparc Fix typo in printed messages 2012-06-24 11:03:52 -07:00
tile arch/tile: big-endian: properly bswap instruction bundles when backtracing 2012-06-18 13:11:21 -04:00
um
unicore32
x86 x86/vsyscall: allow seccomp filter in vsyscall=emulate 2012-07-13 14:25:55 -07:00
xtensa xtensa: fix incorrect memset 2012-07-11 16:04:49 -07:00
.gitignore
Kconfig