[PATCH] arm64: Support Clang UBSAN trap codes for better reporting
Kees Cook
keescook at chromium.org
Fri Feb 3 08:36:04 PST 2023
On Fri, Feb 03, 2023 at 12:34:38PM +0100, Ard Biesheuvel wrote:
> [...]
> > + switch (check_type) {
> > + case ubsan_add_overflow:
> > + return "UBSAN: addition overflow";
>
> It would be nice if we could avoid duplicating this UBSAN: prefix 21x times.
Yeah, agreed. I didn't see a way around it without weirdness or loss of
details. die() takes a string not a format string, so without really
odd shenanigans (re-write a single string in memory?) this is the most
straight forward. One idea, though, is to drop all the strings that'll
never happen -- i.e. wrap individual case statements in the associated
CONFIG_UBSAN_foo. I already dropped several strings that were never
implemented in the kernel's UBSAN. I could be even more picky. I'll try
this in v2...
--
Kees Cook
More information about the linux-arm-kernel
mailing list