linux-uconsole/tools/testing/selftests
Andy Lutomirski d34ecdc971 selftests/x86/ldt_gdt_32: Work around a glibc sigaction() bug
commit 65973dd3fd upstream.

i386 glibc is buggy and calls the sigaction syscall incorrectly.

This is asymptomatic for normal programs, but it blows up on
programs that do evil things with segmentation.  The ldt_gdt
self-test is an example of such an evil program.

This doesn't appear to be a regression -- I think I just got lucky
with the uninitialized memory that glibc threw at the kernel when I
wrote the test.

This hackish fix manually issues sigaction(2) syscalls to undo the
damage.  Without the fix, ldt_gdt_32 segfaults; with the fix, it
passes for me.

See: https://sourceware.org/bugzilla/show_bug.cgi?id=21269

Signed-off-by: Andy Lutomirski <luto@kernel.org>
Cc: Boris Ostrovsky <boris.ostrovsky@oracle.com>
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: Josh Poimboeuf <jpoimboe@redhat.com>
Cc: Juergen Gross <jgross@suse.com>
Cc: Linus Torvalds <torvalds@linux-foundation.org>
Cc: Peter Zijlstra <peterz@infradead.org>
Cc: Thomas Garnier <thgarnie@google.com>
Cc: Thomas Gleixner <tglx@linutronix.de>
Link: http://lkml.kernel.org/r/aaab0f9f93c9af25396f01232608c163a760a668.1490218061.git.luto@kernel.org
Signed-off-by: Ingo Molnar <mingo@kernel.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
2017-05-20 14:26:59 +02:00
..
breakpoints selftests: breakpoint: Actually build it 2015-11-03 16:55:08 -07:00
capabilities selftests/capabilities: Add tests for capability evolution 2015-09-04 16:54:41 -07:00
cpu-hotplug selftests: change cpu on-off-test.sh name to be unique 2015-04-01 10:32:52 -06:00
efivarfs efi: Make efivarfs entries immutable by default 2016-03-03 15:07:09 -08:00
exec selftests: exec: revert to default emit rule 2015-09-14 16:45:05 -06:00
firmware selftests: firmware: skip timeout checks for kernels without user mode helper 2015-08-05 17:07:19 -07:00
ftrace selftests: kprobe: Choose an always-defined function to probe 2015-11-03 16:54:51 -07:00
futex tools:testing/selftests: fix typo in futex/README 2015-11-16 19:22:49 -07:00
ipc selftest/ipc: enable cross compilation 2015-04-02 12:41:52 -06:00
kcmp selftests: Set CC using CROSS_COMPILE once in lib.mk 2015-03-19 15:16:51 -06:00
lib selftests: run lib/test_printf module 2015-11-06 17:50:42 -08:00
membarrier membarrier: clean up selftest 2015-09-22 15:09:53 -07:00
memfd selftests: Make scripts executable 2015-11-03 16:54:57 -07:00
memory-hotplug selftests: Change memory on-off-test.sh name to be unique 2015-04-01 10:33:02 -06:00
mount selftests/mount: output WARN messages when mount test skipped 2015-05-26 15:58:06 -06:00
mqueue selftests: Add missing #include directives 2015-11-03 16:53:53 -07:00
net selftests: do not require bash to run netsocktests testcase 2017-01-19 20:17:18 +01:00
powerpc selftest/powerpc: Wrong PMC initialized in pmc56_overflow test 2017-01-26 08:23:50 +01:00
pstore selftests/pstore: add pstore test scripts going with reboot 2015-10-15 20:00:32 -06:00
ptrace selftests: Introduce minimal shared logic for running tests 2015-03-13 15:13:40 -06:00
rcutorture Merge branches 'doc.2015.10.06a', 'percpu-rwsem.2015.10.06a' and 'torture.2015.10.06a' into HEAD 2015-10-07 16:06:25 -07:00
seccomp selftests/seccomp: Get page size from sysconf 2015-11-18 16:56:53 -07:00
size selftests: Set CC using CROSS_COMPILE once in lib.mk 2015-03-19 15:16:51 -06:00
static_keys selftests: Make scripts executable 2015-11-03 16:54:57 -07:00
sysctl selftests: Add install target 2015-03-13 15:21:56 -06:00
timers linux-kselftest-4.4-rc1 2015-11-10 20:46:45 -08:00
user selftests: Introduce minimal shared logic for running tests 2015-03-13 15:13:40 -06:00
vm Merge branch 'akpm' (patches from Andrew) 2015-11-10 21:14:23 -08:00
x86 selftests/x86/ldt_gdt_32: Work around a glibc sigaction() bug 2017-05-20 14:26:59 +02:00
zram seltests/zram: fix syntax error 2015-09-14 16:40:57 -06:00
gen_kselftest_tar.sh selftests: Add tool to generate kselftest tar archive 2015-03-24 08:43:19 -06:00
kselftest.h kselftest: Add exit code defines 2015-05-26 15:58:08 -06:00
kselftest_install.sh selftests: Add kselftest install tool 2015-03-24 08:43:05 -06:00
lib.mk selftests: change install command to rsync 2015-09-14 16:43:51 -06:00
Makefile selftests: do not require bash for the generated test 2017-01-19 20:17:18 +01:00