Merge tag 'orphan-handling-v5.12-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/kees/linux
Pull orphan handling fix from Kees Cook:
"Another case of bogus .eh_frame emission was noticed under
CONFIG_GCOV_KERNEL=y.
Summary:
- Define SANITIZER_DISCARDS with CONFIG_GCOV_KERNEL=y (Nathan
Chancellor)"
* tag 'orphan-handling-v5.12-rc1' of git://git.kernel.org/pub/scm/linux/kernel/git/kees/linux:
vmlinux.lds.h: Define SANITIZER_DISCARDS with CONFIG_GCOV_KERNEL=y
This commit is contained in:
@@ -968,12 +968,13 @@
|
||||
#endif
|
||||
|
||||
/*
|
||||
* Clang's -fsanitize=kernel-address and -fsanitize=thread produce
|
||||
* unwanted sections (.eh_frame and .init_array.*), but
|
||||
* CONFIG_CONSTRUCTORS wants to keep any .init_array.* sections.
|
||||
* Clang's -fprofile-arcs, -fsanitize=kernel-address, and
|
||||
* -fsanitize=thread produce unwanted sections (.eh_frame
|
||||
* and .init_array.*), but CONFIG_CONSTRUCTORS wants to
|
||||
* keep any .init_array.* sections.
|
||||
* https://bugs.llvm.org/show_bug.cgi?id=46478
|
||||
*/
|
||||
#if defined(CONFIG_KASAN_GENERIC) || defined(CONFIG_KCSAN)
|
||||
#if defined(CONFIG_GCOV_KERNEL) || defined(CONFIG_KASAN_GENERIC) || defined(CONFIG_KCSAN)
|
||||
# ifdef CONFIG_CONSTRUCTORS
|
||||
# define SANITIZER_DISCARDS \
|
||||
*(.eh_frame)
|
||||
|
||||
Reference in New Issue
Block a user