Messages in this thread | | | Date | Sun, 28 Jun 2020 16:05:23 +0200 | From | Borislav Petkov <> | Subject | [GIT PULL] x86/entry for 5.8 |
| |
Hi Linus,
please pull the x86/entry urgent pile which has accumulated since the merge window. It is not the smallest but considering the almost complete entry core rewrite, the amount of fixes to follow is somewhat higher than usual, which is to be expected.
Thx.
--- The following changes since commit 8be3a53e18e0e1a98f288f6c7f5e9da3adbe9c49:
Merge tag 'erofs-for-5.8-rc3-fixes' of git://git.kernel.org/pub/scm/linux/kernel/git/xiang/erofs (2020-06-24 17:39:30 -0700)
are available in the Git repository at:
git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip.git tags/x86_entry_for_5.8
for you to fetch changes up to 2c92d787cc9fad57d05c96bd117782183768258a:
Merge branch 'linus' into x86/entry, to resolve conflicts (2020-06-26 12:24:42 +0200)
---------------------------------------------------------------- Peter Zijlstra says:
These patches address a number of instrumentation issues that were found after the x86/entry overhaul. When combined with rcu/urgent and objtool/urgent, these patches make UBSAN/KASAN/KCSAN happy again.
Part of making this all work is bumping the minimum GCC version for KASAN builds to gcc-8.3, the reason for this is that the __no_sanitize_address function attribute is broken in GCC releases before that.
No known GCC version has a working __no_sanitize_undefined, however because the only noinstr violation that results from this happens when an UB is found, we treat it like WARN. That is, we allow it to violate the noinstr rules in order to get the warning out.
---------------------------------------------------------------- Ingo Molnar (1): Merge branch 'linus' into x86/entry, to resolve conflicts
Marco Elver (4): kasan: Bump required compiler version compiler_types.h: Add __no_sanitize_{address,undefined} to noinstr compiler_attributes.h: Support no_sanitize_undefined check with GCC 4 kasan: Fix required compiler version
Peter Zijlstra (10): x86, kcsan: Remove __no_kcsan_or_inline usage kcsan: Remove __no_kcsan_or_inline x86, kcsan: Add __no_kcsan to noinstr x86/entry, cpumask: Provide non-instrumented variant of cpu_is_offline() x86/entry, ubsan, objtool: Whitelist __ubsan_handle_*() x86/entry, bug: Comment the instrumentation_begin() usage for WARN() objtool: Don't consider vmlinux a C-file x86/entry: Fixup bad_iret vs noinstr x86/entry: Increase entry_stack size to a full page x86/entry: Fix #UD vs WARN more
Documentation/dev-tools/kcsan.rst | 6 --- arch/x86/include/asm/bitops.h | 6 +-- arch/x86/include/asm/bug.h | 6 +++ arch/x86/include/asm/cpumask.h | 18 +++++++++ arch/x86/include/asm/processor.h | 2 +- arch/x86/kernel/cpu/mce/core.c | 2 +- arch/x86/kernel/nmi.c | 2 +- arch/x86/kernel/traps.c | 78 +++++++++++++++++++------------------ arch/x86/lib/memcpy_64.S | 4 ++ include/linux/compiler-clang.h | 8 ++++ include/linux/compiler-gcc.h | 6 +++ include/linux/compiler_attributes.h | 1 + include/linux/compiler_types.h | 14 +++---- lib/Kconfig.kasan | 4 ++ tools/objtool/check.c | 30 +++++++++++++- 15 files changed, 126 insertions(+), 61 deletions(-)
-- Regards/Gruss, Boris.
SUSE Software Solutions Germany GmbH, GF: Felix Imendörffer, HRB 36809, AG Nürnberg
| |