]> git.ipfire.org Git - thirdparty/kernel/stable-queue.git/commitdiff
drop arm64 LTO patch
authorGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Mon, 22 Jan 2024 23:22:10 +0000 (15:22 -0800)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Mon, 22 Jan 2024 23:22:10 +0000 (15:22 -0800)
queue-6.6/arm64-scs-work-around-full-lto-issue-with-dynamic-sc.patch [deleted file]
queue-6.6/series
queue-6.7/arm64-scs-work-around-full-lto-issue-with-dynamic-sc.patch [deleted file]
queue-6.7/series

diff --git a/queue-6.6/arm64-scs-work-around-full-lto-issue-with-dynamic-sc.patch b/queue-6.6/arm64-scs-work-around-full-lto-issue-with-dynamic-sc.patch
deleted file mode 100644 (file)
index dea33fd..0000000
+++ /dev/null
@@ -1,51 +0,0 @@
-From 427661778c522c06d7b0ddc5330f37518a9eb704 Mon Sep 17 00:00:00 2001
-From: Sasha Levin <sashal@kernel.org>
-Date: Wed, 10 Jan 2024 14:26:20 +0100
-Subject: arm64: scs: Work around full LTO issue with dynamic SCS
-
-From: Ard Biesheuvel <ardb@kernel.org>
-
-[ Upstream commit 8c5a19cb17a71e52303150335b459c7d2d28a155 ]
-
-Full LTO takes the '-mbranch-protection=none' passed to the compiler
-when generating the dynamic shadow call stack patching code as a hint to
-stop emitting PAC instructions altogether. (Thin LTO appears unaffected
-by this)
-
-Work around this by stripping unwind tables from the object in question,
-which should be sufficient to prevent the patching code from attempting
-to patch itself.
-
-Fixes: 3b619e22c460 ("arm64: implement dynamic shadow call stack for Clang")
-Signed-off-by: Ard Biesheuvel <ardb@kernel.org>
-Reviewed-by: Sami Tolvanen <samitolvanen@google.com>
-Reviewed-by: Kees Cook <keescook@chromium.org>
-Link: https://lore.kernel.org/r/20240110132619.258809-2-ardb+git@google.com
-Signed-off-by: Will Deacon <will@kernel.org>
-Signed-off-by: Sasha Levin <sashal@kernel.org>
----
- arch/arm64/kernel/Makefile | 8 +++++++-
- 1 file changed, 7 insertions(+), 1 deletion(-)
-
-diff --git a/arch/arm64/kernel/Makefile b/arch/arm64/kernel/Makefile
-index d95b3d6b471a..e5d03a7039b4 100644
---- a/arch/arm64/kernel/Makefile
-+++ b/arch/arm64/kernel/Makefile
-@@ -73,7 +73,13 @@ obj-$(CONFIG_ARM64_MTE)                     += mte.o
- obj-y                                 += vdso-wrap.o
- obj-$(CONFIG_COMPAT_VDSO)             += vdso32-wrap.o
- obj-$(CONFIG_UNWIND_PATCH_PAC_INTO_SCS)       += patch-scs.o
--CFLAGS_patch-scs.o                    += -mbranch-protection=none
-+
-+# We need to prevent the SCS patching code from patching itself. Using
-+# -mbranch-protection=none here to avoid the patchable PAC opcodes from being
-+# generated triggers an issue with full LTO on Clang, which stops emitting PAC
-+# instructions altogether. So instead, omit the unwind tables used by the
-+# patching code, so it will not be able to locate its own PAC instructions.
-+CFLAGS_patch-scs.o                    += -fno-asynchronous-unwind-tables -fno-unwind-tables
- # Force dependency (vdso*-wrap.S includes vdso.so through incbin)
- $(obj)/vdso-wrap.o: $(obj)/vdso/vdso.so
--- 
-2.43.0
-
index 5f1060302711593b11103f7e4910737b002b8edd..cb41e19d708d5eded31694498e8a90434c8cd3e7 100644 (file)
@@ -528,7 +528,6 @@ net-ethernet-ti-am65-cpsw-fix-max-mtu-to-fit-etherne.patch
 amt-do-not-use-overwrapped-cb-area.patch
 net-micrel-fix-ptp-frame-parsing-for-lan8841.patch
 net-phy-micrel-populate-.soft_reset-for-ksz9131.patch
-arm64-scs-work-around-full-lto-issue-with-dynamic-sc.patch
 alsa-hda-properly-setup-hdmi-stream.patch
 mptcp-mptcp_parse_option-fix-for-mptcpopt_mp_join.patch
 mptcp-strict-validation-before-using-mp_opt-hmac.patch
diff --git a/queue-6.7/arm64-scs-work-around-full-lto-issue-with-dynamic-sc.patch b/queue-6.7/arm64-scs-work-around-full-lto-issue-with-dynamic-sc.patch
deleted file mode 100644 (file)
index 8138201..0000000
+++ /dev/null
@@ -1,51 +0,0 @@
-From 9d8d73251dc2720caa42aa1d3fc2f290232d9412 Mon Sep 17 00:00:00 2001
-From: Sasha Levin <sashal@kernel.org>
-Date: Wed, 10 Jan 2024 14:26:20 +0100
-Subject: arm64: scs: Work around full LTO issue with dynamic SCS
-
-From: Ard Biesheuvel <ardb@kernel.org>
-
-[ Upstream commit 8c5a19cb17a71e52303150335b459c7d2d28a155 ]
-
-Full LTO takes the '-mbranch-protection=none' passed to the compiler
-when generating the dynamic shadow call stack patching code as a hint to
-stop emitting PAC instructions altogether. (Thin LTO appears unaffected
-by this)
-
-Work around this by stripping unwind tables from the object in question,
-which should be sufficient to prevent the patching code from attempting
-to patch itself.
-
-Fixes: 3b619e22c460 ("arm64: implement dynamic shadow call stack for Clang")
-Signed-off-by: Ard Biesheuvel <ardb@kernel.org>
-Reviewed-by: Sami Tolvanen <samitolvanen@google.com>
-Reviewed-by: Kees Cook <keescook@chromium.org>
-Link: https://lore.kernel.org/r/20240110132619.258809-2-ardb+git@google.com
-Signed-off-by: Will Deacon <will@kernel.org>
-Signed-off-by: Sasha Levin <sashal@kernel.org>
----
- arch/arm64/kernel/Makefile | 8 +++++++-
- 1 file changed, 7 insertions(+), 1 deletion(-)
-
-diff --git a/arch/arm64/kernel/Makefile b/arch/arm64/kernel/Makefile
-index d95b3d6b471a..e5d03a7039b4 100644
---- a/arch/arm64/kernel/Makefile
-+++ b/arch/arm64/kernel/Makefile
-@@ -73,7 +73,13 @@ obj-$(CONFIG_ARM64_MTE)                     += mte.o
- obj-y                                 += vdso-wrap.o
- obj-$(CONFIG_COMPAT_VDSO)             += vdso32-wrap.o
- obj-$(CONFIG_UNWIND_PATCH_PAC_INTO_SCS)       += patch-scs.o
--CFLAGS_patch-scs.o                    += -mbranch-protection=none
-+
-+# We need to prevent the SCS patching code from patching itself. Using
-+# -mbranch-protection=none here to avoid the patchable PAC opcodes from being
-+# generated triggers an issue with full LTO on Clang, which stops emitting PAC
-+# instructions altogether. So instead, omit the unwind tables used by the
-+# patching code, so it will not be able to locate its own PAC instructions.
-+CFLAGS_patch-scs.o                    += -fno-asynchronous-unwind-tables -fno-unwind-tables
- # Force dependency (vdso*-wrap.S includes vdso.so through incbin)
- $(obj)/vdso-wrap.o: $(obj)/vdso/vdso.so
--- 
-2.43.0
-
index 6c145cfe574b38747df59bae6e7acbf5be561e2e..6540842943aa2d7bab51542a48f12ce96121af52 100644 (file)
@@ -587,7 +587,6 @@ amt-do-not-use-overwrapped-cb-area.patch
 alsa-aloop-introduce-a-function-to-get-if-access-is-.patch
 net-micrel-fix-ptp-frame-parsing-for-lan8841.patch
 net-phy-micrel-populate-.soft_reset-for-ksz9131.patch
-arm64-scs-work-around-full-lto-issue-with-dynamic-sc.patch
 alsa-hda-properly-setup-hdmi-stream.patch
 mptcp-mptcp_parse_option-fix-for-mptcpopt_mp_join.patch
 mptcp-strict-validation-before-using-mp_opt-hmac.patch