aboutsummaryrefslogtreecommitdiffstats
path: root/queue-5.4/kbuild-update-assembler-calls-to-use-proper-flags-and-language-target.patch
diff options
Diffstat (limited to 'queue-5.4/kbuild-update-assembler-calls-to-use-proper-flags-and-language-target.patch')
-rw-r--r--queue-5.4/kbuild-update-assembler-calls-to-use-proper-flags-and-language-target.patch67
1 files changed, 0 insertions, 67 deletions
diff --git a/queue-5.4/kbuild-update-assembler-calls-to-use-proper-flags-and-language-target.patch b/queue-5.4/kbuild-update-assembler-calls-to-use-proper-flags-and-language-target.patch
deleted file mode 100644
index 0b9b2dd6e44..00000000000
--- a/queue-5.4/kbuild-update-assembler-calls-to-use-proper-flags-and-language-target.patch
+++ /dev/null
@@ -1,67 +0,0 @@
-From 53842cd1ecb80f2347244af2a4fdfd2956e010b6 Mon Sep 17 00:00:00 2001
-From: Nick Desaulniers <ndesaulniers@google.com>
-Date: Wed, 11 Jan 2023 20:05:01 -0700
-Subject: kbuild: Update assembler calls to use proper flags and language target
-
-From: Nick Desaulniers <ndesaulniers@google.com>
-
-commit d5c8d6e0fa61401a729e9eb6a9c7077b2d3aebb0 upstream.
-
-as-instr uses KBUILD_AFLAGS, but as-option uses KBUILD_CFLAGS. This can
-cause as-option to fail unexpectedly when CONFIG_WERROR is set, because
-clang will emit -Werror,-Wunused-command-line-argument for various -m
-and -f flags in KBUILD_CFLAGS for assembler sources.
-
-Callers of as-option and as-instr should be adding flags to
-KBUILD_AFLAGS / aflags-y, not KBUILD_CFLAGS / cflags-y. Use
-KBUILD_AFLAGS in all macros to clear up the initial problem.
-
-Unfortunately, -Wunused-command-line-argument can still be triggered
-with clang by the presence of warning flags or macro definitions because
-'-x assembler' is used, instead of '-x assembler-with-cpp', which will
-consume these flags. Switch to '-x assembler-with-cpp' in places where
-'-x assembler' is used, as the compiler is always used as the driver for
-out of line assembler sources in the kernel.
-
-Finally, add -Werror to these macros so that they behave consistently
-whether or not CONFIG_WERROR is set.
-
-[nathan: Reworded and expanded on problems in commit message
- Use '-x assembler-with-cpp' in a couple more places]
-
-Link: https://github.com/ClangBuiltLinux/linux/issues/1699
-Suggested-by: Masahiro Yamada <masahiroy@kernel.org>
-Signed-off-by: Nick Desaulniers <ndesaulniers@google.com>
-Signed-off-by: Nathan Chancellor <nathan@kernel.org>
-Tested-by: Linux Kernel Functional Testing <lkft@linaro.org>
-Tested-by: Anders Roxell <anders.roxell@linaro.org>
-Signed-off-by: Masahiro Yamada <masahiroy@kernel.org>
-Signed-off-by: Nathan Chancellor <nathan@kernel.org>
-Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
----
- scripts/Kbuild.include | 8 ++++----
- 1 file changed, 4 insertions(+), 4 deletions(-)
-
---- a/scripts/Kbuild.include
-+++ b/scripts/Kbuild.include
-@@ -99,16 +99,16 @@ try-run = $(shell set -e; \
- fi)
-
- # as-option
--# Usage: cflags-y += $(call as-option,-Wa$(comma)-isa=foo,)
-+# Usage: aflags-y += $(call as-option,-Wa$(comma)-isa=foo,)
-
- as-option = $(call try-run,\
-- $(CC) $(KBUILD_CFLAGS) $(1) -c -x assembler /dev/null -o "$$TMP",$(1),$(2))
-+ $(CC) -Werror $(KBUILD_AFLAGS) $(1) -c -x assembler-with-cpp /dev/null -o "$$TMP",$(1),$(2))
-
- # as-instr
--# Usage: cflags-y += $(call as-instr,instr,option1,option2)
-+# Usage: aflags-y += $(call as-instr,instr,option1,option2)
-
- as-instr = $(call try-run,\
-- printf "%b\n" "$(1)" | $(CC) $(KBUILD_AFLAGS) -c -x assembler -o "$$TMP" -,$(2),$(3))
-+ printf "%b\n" "$(1)" | $(CC) -Werror $(KBUILD_AFLAGS) -c -x assembler-with-cpp -o "$$TMP" -,$(2),$(3))
-
- # __cc-option
- # Usage: MY_CFLAGS += $(call __cc-option,$(CC),$(MY_CFLAGS),-march=winchip-c6,-march=i586)