[PATCH 0/2] Remove '-mno-global-merge' from KBUILD_CFLAGS

Nathan Chancellor
2022-03-30T23:46:08Z

As discussed at [1] and [2], this series removes '-mno-global-merge'
from KBUILD_CFLAGS for clang, as it causes warnings for UML, and it
no longer appears to be necessary, as I do not see any modpost warnings
with LLVM 11 through 15 with several different ARCH=arm and ARCH=arm64
configurations.

[1] is currently in the UML tree, destined for 5.18, but it is buggy, as
I note in [2]. This series is an alternative to [2], which has not been
picked up yet, so it is based on the current UML tree. If [2] is picked
up, I can rework the first patch to remove the '-mno-global-merge'
filtering from arch/um/Makefile; otherwise, this should be picked up in
place of [2].

I intentionally kept the first patch vague around what fixed the modpost
warnings, as I am not too sure. [3] seems somewhat likely, but I don't
think that will revert cleanly on main to test. I think the testing is
enough to show that the original issue is resolved but I do note that we
can add this flag back in the architecture specific Makefiles if needed.

Please review and ack as necessary.

[1]: https://lore.kernel.org/r/20220303090643.241747-1-davidgow@google.com/
[2]: https://lore.kernel.org/r/20220322173547.677760-1-nathan@kernel.org/
[3]: https://github.com/llvm/llvm-project/commit/863bfdbfb446adaef767ff514d1f2ffb5d489562

Nathan Chancellor (2):
kbuild: Remove '-mno-global-merge'
Revert "um: clang: Strip out -mno-global-merge from USER_CFLAGS"

Makefile | 4 ----
arch/um/Makefile | 4 ----
2 files changed, 8 deletions(-)

base-commit: 82017457957a550d7d00dde419435dd74a890887
--
2.35.1