65cacec1ba
The vdso-based sigreturn mechanism is fragile and isn't used by modern glibc so, if we break it, we'll only notice when someone tests an unusual libc. Add an explicit selftest. [ I wrote this while debugging a Bionic breakage -- my first guess was that I had somehow messed up sigreturn. I've caused problems in that code before, and it's really easy to fail to notice it because there's nothing on a modern distro that needs vdso-based sigreturn. ] Signed-off-by: Andy Lutomirski <luto@kernel.org> Cc: Andy Lutomirski <luto@amacapital.net> Cc: Borislav Petkov <bp@alien8.de> Cc: Brian Gerst <brgerst@gmail.com> Cc: Denys Vlasenko <dvlasenk@redhat.com> Cc: H. Peter Anvin <hpa@zytor.com> Cc: Linus Torvalds <torvalds@linux-foundation.org> Cc: Peter Zijlstra <peterz@infradead.org> Cc: Shuah Khan <shuahkh@osg.samsung.com> Cc: Thomas Gleixner <tglx@linutronix.de> Link: http://lkml.kernel.org/r/32946d714156879cd8e5d8eab044cd07557ed558.1452628504.git.luto@kernel.org Signed-off-by: Ingo Molnar <mingo@kernel.org> |
||
---|---|---|
.. | ||
.gitignore | ||
check_cc.sh | ||
entry_from_vm86.c | ||
ldt_gdt.c | ||
Makefile | ||
ptrace_syscall.c | ||
raw_syscall_helper_32.S | ||
sigreturn.c | ||
single_step_syscall.c | ||
syscall_arg_fault.c | ||
syscall_nt.c | ||
sysret_ss_attrs.c | ||
test_FCMOV.c | ||
test_FCOMI.c | ||
test_FISTTP.c | ||
test_syscall_vdso.c | ||
thunks_32.S | ||
thunks.S | ||
trivial_32bit_program.c | ||
trivial_64bit_program.c | ||
unwind_vdso.c | ||
vdso_restorer.c |