-
- Downloads
arm64: Support Clang UBSAN trap codes for better reporting
When building with CONFIG_UBSAN_TRAP=y on arm64, Clang encodes the UBSAN check (handler) type in the esr. Extract this and actually report these traps as coming from the specific UBSAN check that tripped. Before: Internal error: BRK handler: 00000000f20003e8 [#1] PREEMPT SMP After: Internal error: UBSAN: shift out of bounds: 00000000f2005514 [#1] PREEMPT SMP Acked-by:Mark Rutland <mark.rutland@arm.com> Reviewed-by:
Ard Biesheuvel <ardb@kernel.org> Acked-by:
Mukesh Ojha <quic_mojha@quicinc.com> Reviewed-by:
Fangrui Song <maskray@google.com> Cc: Catalin Marinas <catalin.marinas@arm.com> Cc: Will Deacon <will@kernel.org> Cc: John Stultz <jstultz@google.com> Cc: Yongqin Liu <yongqin.liu@linaro.org> Cc: Sami Tolvanen <samitolvanen@google.com> Cc: Yury Norov <yury.norov@gmail.com> Cc: Andrey Konovalov <andreyknvl@gmail.com> Cc: Marco Elver <elver@google.com> Cc: linux-arm-kernel@lists.infradead.org Cc: llvm@lists.linux.dev Signed-off-by:
Kees Cook <keescook@chromium.org>
Showing
- arch/arm64/include/asm/brk-imm.h 3 additions, 0 deletionsarch/arm64/include/asm/brk-imm.h
- arch/arm64/kernel/traps.c 21 additions, 0 deletionsarch/arm64/kernel/traps.c
- include/linux/ubsan.h 9 additions, 0 deletionsinclude/linux/ubsan.h
- lib/Makefile 0 additions, 2 deletionslib/Makefile
- lib/ubsan.c 68 additions, 0 deletionslib/ubsan.c
- lib/ubsan.h 32 additions, 0 deletionslib/ubsan.h
Loading
Please register or sign in to comment