selftests/x86: Test __kernel_sigreturn and __kernel_rt_sigreturn
authorAndy Lutomirski <luto@kernel.org>
Tue, 12 Jan 2016 19:56:15 +0000 (11:56 -0800)
committerIngo Molnar <mingo@kernel.org>
Wed, 13 Jan 2016 09:34:40 +0000 (10:34 +0100)
commit65cacec1ba908a153cfb19c4de596a108f95970c
treed14443d39d595e39158ab97cbacca7b9fd736485
parent2f0c0b2d96b1205efb14347009748d786c2d9ba5
selftests/x86: Test __kernel_sigreturn and __kernel_rt_sigreturn

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>
tools/testing/selftests/x86/Makefile
tools/testing/selftests/x86/vdso_restorer.c [new file with mode: 0644]