Hi, This brings Linux's integer overflow mitigation integration up to the current set of features available in Clang for handling things sanely (i.e. pattern exclusions). While this isn't over yet, it puts all the infrastructure in place to continue keeping up to date with current Clang development. The next step is to add support for the coming canonical wrapping and non-wrapping types[1].
-Kees [1] https://discourse.llvm.org/t/rfc-clang-canonical-wrapping-and-non-wrapping-types/84356 Kees Cook (3): ubsan/overflow: Rework integer overflow sanitizer option to turn on everything ubsan/overflow: Enable pattern exclusions ubsan/overflow: Enable ignorelist parsing and add type filter include/linux/compiler_types.h | 2 +- kernel/configs/hardening.config | 2 +- lib/Kconfig.ubsan | 25 +++++++++++++------------ lib/test_ubsan.c | 18 ++++++++++++++---- lib/ubsan.c | 28 ++++++++++++++++++++++++++-- lib/ubsan.h | 8 ++++++++ scripts/Makefile.lib | 4 ++-- scripts/Makefile.ubsan | 10 ++++++++-- scripts/integer-wrap-ignore.scl | 3 +++ 9 files changed, 76 insertions(+), 24 deletions(-) create mode 100644 scripts/integer-wrap-ignore.scl -- 2.34.1