On Thu, Dec 02, 2021 at 03:36:06PM +0100, Marco Elver wrote:
On Thu, 2 Dec 2021 at 15:23, Kefeng Wang <wangkefeng.wang@xxxxxxxxxx> wrote:I want to do some compiler / config testing before I ack this (just to
This patch enables KCSAN for arm64, with updates to build ruless/Resent/Recent/
to not use KCSAN for several incompatible compilation units.
Resent GCC version(at least GCC10) made outline-atomics as the
default option(unlike Clang), which will cause linker errorsPlease use lore/kernel.org permalinks. For this one it'd be:
for kernel/kcsan/core.o. Disables the out-of-line atomics by
no-outline-atomics to fix the linker errors.
Meanwhile, as Mark said[1], there is a specific issue on arm64
about ARM64_BTI with Clang 11 if KCSAN enabled, which is fixed
by Clang 12, add CLANG_VERSION check. And also some latent issues
are need to be fixed which isn't just a KCSAN problem, we make
the KCSAN depends on EXPERT for now.
Tested selftest and kcsan_test(built with GCC11 and Clang 13),
and all passed.
[1] https://lkml.org/lkml/2021/12/1/354
https://lkml.kernel.org/r/YadiUPpJ0gADbiHQ@FVFF77S0Q05N
(But I think if this is the final version of the patch, hopefully a
maintainer can amend the commit message.)
Signed-off-by: Kefeng Wang <wangkefeng.wang@xxxxxxxxxx>Acked-by: Marco Elver <elver@xxxxxxxxxx> # kernel/kcsan
is still valid, given nothing changed there. I leave the rest to Mark.
make sure there isn't some latent issue I've forgotten about), but
otherwise I think this should be fine.
I'll try to have that done in the next few days.
Any other review/testing would be appreciated!
Thanks,
Mark.