]> git.baikalelectronics.ru Git - kernel.git/commit
lib: test_stackinit.c: XFAIL switch variable init tests
authorKees Cook <keescook@chromium.org>
Tue, 7 Apr 2020 03:10:12 +0000 (20:10 -0700)
committerLinus Torvalds <torvalds@linux-foundation.org>
Tue, 7 Apr 2020 17:43:43 +0000 (10:43 -0700)
commit4b3bbf258b402aaff60395d67ad56934dc6717c5
treec5c273b273083738e8941b83cbf217f3e6a8a0a3
parentf1c7c2fc97f98dbd0deef04fc7da38cafa57a585
lib: test_stackinit.c: XFAIL switch variable init tests

The tests for initializing a variable defined between a switch statement's
test and its first "case" statement are currently not initialized in
Clang[1] nor the proposed auto-initialization feature in GCC.

We should retain the test (so that we can evaluate compiler fixes), but
mark it as an "expected fail".  The rest of the kernel source will be
adjusted to avoid this corner case.

Also disable -Wswitch-unreachable for the test so that the intentionally
broken code won't trigger warnings for GCC (nor future Clang) when
initialization happens this unhandled place.

[1] https://bugs.llvm.org/show_bug.cgi?id=44916

Suggested-by: Alexander Potapenko <glider@google.com>
Signed-off-by: Kees Cook <keescook@chromium.org>
Signed-off-by: Andrew Morton <akpm@linux-foundation.org>
Cc: Jann Horn <jannh@google.com>
Cc: Ard Biesheuvel <ard.biesheuvel@linaro.org>
Link: http://lkml.kernel.org/r/202002191358.2897A07C6@keescook
Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
lib/Makefile
lib/test_stackinit.c