]> git.ipfire.org Git - thirdparty/kernel/stable-queue.git/commitdiff
4.9-stable patches
authorGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Wed, 9 Mar 2022 22:35:21 +0000 (23:35 +0100)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Wed, 9 Mar 2022 22:35:21 +0000 (23:35 +0100)
added patches:
arm-do-not-use-nocrossrefs-directive-with-ld.lld.patch

queue-4.9/arm-do-not-use-nocrossrefs-directive-with-ld.lld.patch [new file with mode: 0644]
queue-4.9/series

diff --git a/queue-4.9/arm-do-not-use-nocrossrefs-directive-with-ld.lld.patch b/queue-4.9/arm-do-not-use-nocrossrefs-directive-with-ld.lld.patch
new file mode 100644 (file)
index 0000000..c5e8fda
--- /dev/null
@@ -0,0 +1,65 @@
+From 36168e387fa7d0f1fe0cd5cf76c8cea7aee714fa Mon Sep 17 00:00:00 2001
+From: Nathan Chancellor <nathan@kernel.org>
+Date: Wed, 9 Mar 2022 15:07:27 -0700
+Subject: ARM: Do not use NOCROSSREFS directive with ld.lld
+
+From: Nathan Chancellor <nathan@kernel.org>
+
+commit 36168e387fa7d0f1fe0cd5cf76c8cea7aee714fa upstream.
+
+ld.lld does not support the NOCROSSREFS directive at the moment, which
+breaks the build after commit b9baf5c8c5c3 ("ARM: Spectre-BHB
+workaround"):
+
+  ld.lld: error: ./arch/arm/kernel/vmlinux.lds:34: AT expected, but got NOCROSSREFS
+
+Support for this directive will eventually be implemented, at which
+point a version check can be added. To avoid breaking the build in the
+meantime, just define NOCROSSREFS to nothing when using ld.lld, with a
+link to the issue for tracking.
+
+Cc: stable@vger.kernel.org
+Fixes: b9baf5c8c5c3 ("ARM: Spectre-BHB workaround")
+Link: https://github.com/ClangBuiltLinux/linux/issues/1609
+Signed-off-by: Nathan Chancellor <nathan@kernel.org>
+Signed-off-by: Linus Torvalds <torvalds@linux-foundation.org>
+Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
+---
+ arch/arm/kernel/vmlinux-xip.lds.S |    8 ++++++++
+ arch/arm/kernel/vmlinux.lds.S     |    8 ++++++++
+ 2 files changed, 16 insertions(+)
+
+--- a/arch/arm/kernel/vmlinux-xip.lds.S
++++ b/arch/arm/kernel/vmlinux-xip.lds.S
+@@ -12,6 +12,14 @@
+ #include <asm/memory.h>
+ #include <asm/page.h>
++/*
++ * ld.lld does not support NOCROSSREFS:
++ * https://github.com/ClangBuiltLinux/linux/issues/1609
++ */
++#ifdef CONFIG_LD_IS_LLD
++#define NOCROSSREFS
++#endif
++
+ /* Set start/end symbol names to the LMA for the section */
+ #define ARM_LMA(sym, section)                                         \
+       sym##_start = LOADADDR(section);                                \
+--- a/arch/arm/kernel/vmlinux.lds.S
++++ b/arch/arm/kernel/vmlinux.lds.S
+@@ -14,6 +14,14 @@
+ #include <asm/page.h>
+ #include <asm/pgtable.h>
++/*
++ * ld.lld does not support NOCROSSREFS:
++ * https://github.com/ClangBuiltLinux/linux/issues/1609
++ */
++#ifdef CONFIG_LD_IS_LLD
++#define NOCROSSREFS
++#endif
++
+ /* Set start/end symbol names to the LMA for the section */
+ #define ARM_LMA(sym, section)                                         \
+       sym##_start = LOADADDR(section);                                \
index 0a6acd1fd3d6dad2b1cc3d7e4f45b58b3bd78e4b..f0e721122c62b77870e02e838c58370f5225a659 100644 (file)
@@ -23,3 +23,4 @@ arm-spectre-bhb-workaround.patch
 arm-include-unprivileged-bpf-status-in-spectre-v2-reporting.patch
 arm-fix-build-error-when-bpf_syscall-is-disabled.patch
 arm-fix-co-processor-register-typo.patch
+arm-do-not-use-nocrossrefs-directive-with-ld.lld.patch