linux-kbuild.vger.kernel.org archive mirror
 help / color / mirror / Atom feed
* [PATCH 00/10] Bump minimum supported version of LLVM for building the kernel to 15.0.0
@ 2025-08-18 18:57 Nathan Chancellor
  2025-08-18 18:57 ` [PATCH 01/10] kbuild: Bump minimum " Nathan Chancellor
  2025-08-19  0:55 ` [PATCH 00/10] Bump minimum supported " Kees Cook
  0 siblings, 2 replies; 5+ messages in thread
From: Nathan Chancellor @ 2025-08-18 18:57 UTC (permalink / raw)
  To: Andrew Morton
  Cc: Arnd Bergmann, Kees Cook, Nick Desaulniers, Bill Wendling,
	Justin Stitt, linux-kernel, llvm, patches, Nathan Chancellor,
	linux-kbuild, linux-hardening, Russell King, Ard Biesheuvel,
	linux-arm-kernel, Catalin Marinas, Will Deacon,
	Thomas Bogendoerfer, linux-mips, Madhavan Srinivasan,
	Michael Ellerman, Nicholas Piggin, Christophe Leroy, linuxppc-dev,
	Palmer Dabbelt, Alexandre Ghiti, linux-riscv, Josh Poimboeuf,
	Peter Zijlstra, Marco Elver, Dmitry Vyukov, kasan-dev,
	Alexander Potapenko

s390 and x86 have required LLVM 15 since

  30d17fac6aae ("scripts/min-tool-version.sh: raise minimum clang version to 15.0.0 for s390")
  7861640aac52 ("x86/build: Raise the minimum LLVM version to 15.0.0")

respectively. This series bumps the rest of the kernel to 15.0.0 to
match, which allows for a decent number of clean ups.

On the distros front, we will only leave behind Debian Bookworm and
Ubuntu Jammy. In both of those cases, builders / developers can either
use the kernel.org toolchains or https://apt.llvm.org to get newer
versions that will run on those distributions, if they cannot upgrade.

  archlinux:latest              clang version 20.1.8
  debian:oldoldstable-slim      Debian clang version 11.0.1-2
  debian:oldstable-slim         Debian clang version 14.0.6
  debian:stable-slim            Debian clang version 19.1.7 (3+b1)
  debian:testing-slim           Debian clang version 19.1.7 (3+b1)
  debian:unstable-slim          Debian clang version 19.1.7 (3+b2)
  fedora:41                     clang version 19.1.7 (Fedora 19.1.7-4.fc41)
  fedora:latest                 clang version 20.1.8 (Fedora 20.1.8-3.fc42)
  fedora:rawhide                clang version 20.1.8 (Fedora 20.1.8-3.fc43)
  opensuse/leap:latest          clang version 17.0.6
  opensuse/tumbleweed:latest    clang version 20.1.8
  ubuntu:focal                  clang version 10.0.0-4ubuntu1
  ubuntu:jammy                  Ubuntu clang version 14.0.0-1ubuntu1.1
  ubuntu:noble                  Ubuntu clang version 18.1.3 (1ubuntu1)
  ubuntu:latest                 Ubuntu clang version 18.1.3 (1ubuntu1)
  ubuntu:rolling                Ubuntu clang version 20.1.2 (0ubuntu1)
  ubuntu:devel                  Ubuntu clang version 20.1.8 (0ubuntu1)

I think it makes sense for either Andrew to carry this via -mm on a
nonmm branch or me to carry this via the Kbuild tree, with the
appropriate acks.

---
Nathan Chancellor (10):
      kbuild: Bump minimum version of LLVM for building the kernel to 15.0.0
      arch/Kconfig: Drop always true condition from RANDOMIZE_KSTACK_OFFSET
      ARM: Clean up definition of ARM_HAS_GROUP_RELOCS
      arm64: Remove tautological LLVM Kconfig conditions
      mips: Unconditionally select ARCH_HAS_CURRENT_STACK_POINTER
      powerpc: Drop unnecessary initializations in __copy_inst_from_kernel_nofault()
      riscv: Remove version check for LTO_CLANG selects
      lib/Kconfig.debug: Drop CLANG_VERSION check from DEBUG_INFO_DWARF_TOOLCHAIN_DEFAULT
      objtool: Drop noinstr hack for KCSAN_WEAK_MEMORY
      KMSAN: Remove tautological checks

 Documentation/process/changes.rst |  2 +-
 arch/Kconfig                      |  1 -
 arch/arm/Kconfig                  | 11 ++++-------
 arch/arm64/Kconfig                |  5 +----
 arch/mips/Kconfig                 |  2 +-
 arch/powerpc/include/asm/inst.h   |  4 ----
 arch/riscv/Kconfig                |  5 ++---
 lib/Kconfig.debug                 |  2 +-
 lib/Kconfig.kcsan                 |  6 ------
 lib/Kconfig.kmsan                 | 11 +----------
 scripts/min-tool-version.sh       |  6 ++----
 tools/objtool/check.c             | 10 ----------
 12 files changed, 13 insertions(+), 52 deletions(-)
---
base-commit: 8f5ae30d69d7543eee0d70083daf4de8fe15d585
change-id: 20250710-bump-min-llvm-ver-15-95231f1eb655

Best regards,
--  
Nathan Chancellor <nathan@kernel.org>


^ permalink raw reply	[flat|nested] 5+ messages in thread

* [PATCH 01/10] kbuild: Bump minimum version of LLVM for building the kernel to 15.0.0
  2025-08-18 18:57 [PATCH 00/10] Bump minimum supported version of LLVM for building the kernel to 15.0.0 Nathan Chancellor
@ 2025-08-18 18:57 ` Nathan Chancellor
  2025-08-21 16:48   ` Nicolas Schier
  2025-08-21 17:27   ` Arnd Bergmann
  2025-08-19  0:55 ` [PATCH 00/10] Bump minimum supported " Kees Cook
  1 sibling, 2 replies; 5+ messages in thread
From: Nathan Chancellor @ 2025-08-18 18:57 UTC (permalink / raw)
  To: Andrew Morton
  Cc: Arnd Bergmann, Kees Cook, Nick Desaulniers, Bill Wendling,
	Justin Stitt, linux-kernel, llvm, patches, Nathan Chancellor,
	linux-kbuild

s390 and x86 have required LLVM 15 since

  30d17fac6aae ("scripts/min-tool-version.sh: raise minimum clang version to 15.0.0 for s390")
  7861640aac52 ("x86/build: Raise the minimum LLVM version to 15.0.0")

respectively but most other architectures allow LLVM 13.0.1 or newer. In
accordance with the recent minimum supported version of GCC bump that
happened in

  118c40b7b503 ("kbuild: require gcc-8 and binutils-2.30")

do the same for LLVM to 15.0.0.

Of the supported releases of Arch Linux, Debian, Fedora, and OpenSUSE
surveyed in evaluating this bump, this only leaves behind Debian
Bookworm (14.0.6) and Ubuntu Jammy (14.0.0). Debian Trixie has 19.1.7
and Ubuntu Noble has 18.1.3 (so there are viable upgrade paths) or users
can use apt.llvm.org, which provides even newer packages for those
distributions.

Signed-off-by: Nathan Chancellor <nathan@kernel.org>
---
Cc: linux-kbuild@vger.kernel.org
---
 Documentation/process/changes.rst | 2 +-
 scripts/min-tool-version.sh       | 6 ++----
 2 files changed, 3 insertions(+), 5 deletions(-)

diff --git a/Documentation/process/changes.rst b/Documentation/process/changes.rst
index bccfa19b45df..b38622b0d525 100644
--- a/Documentation/process/changes.rst
+++ b/Documentation/process/changes.rst
@@ -30,7 +30,7 @@ you probably needn't concern yourself with pcmciautils.
         Program        Minimal version       Command to check the version
 ====================== ===============  ========================================
 GNU C                  8.1              gcc --version
-Clang/LLVM (optional)  13.0.1           clang --version
+Clang/LLVM (optional)  15.0.0           clang --version
 Rust (optional)        1.78.0           rustc --version
 bindgen (optional)     0.65.1           bindgen --version
 GNU make               4.0              make --version
diff --git a/scripts/min-tool-version.sh b/scripts/min-tool-version.sh
index 0d223b4a9445..99b5575c1ef7 100755
--- a/scripts/min-tool-version.sh
+++ b/scripts/min-tool-version.sh
@@ -24,12 +24,10 @@ gcc)
 	fi
 	;;
 llvm)
-	if [ "$SRCARCH" = s390 -o "$SRCARCH" = x86 ]; then
-		echo 15.0.0
-	elif [ "$SRCARCH" = loongarch ]; then
+	if [ "$SRCARCH" = loongarch ]; then
 		echo 18.0.0
 	else
-		echo 13.0.1
+		echo 15.0.0
 	fi
 	;;
 rustc)

-- 
2.50.1


^ permalink raw reply related	[flat|nested] 5+ messages in thread

* Re: [PATCH 00/10] Bump minimum supported version of LLVM for building the kernel to 15.0.0
  2025-08-18 18:57 [PATCH 00/10] Bump minimum supported version of LLVM for building the kernel to 15.0.0 Nathan Chancellor
  2025-08-18 18:57 ` [PATCH 01/10] kbuild: Bump minimum " Nathan Chancellor
@ 2025-08-19  0:55 ` Kees Cook
  1 sibling, 0 replies; 5+ messages in thread
From: Kees Cook @ 2025-08-19  0:55 UTC (permalink / raw)
  To: Nathan Chancellor
  Cc: Andrew Morton, Arnd Bergmann, Nick Desaulniers, Bill Wendling,
	Justin Stitt, linux-kernel, llvm, patches, linux-kbuild,
	linux-hardening, Russell King, Ard Biesheuvel, linux-arm-kernel,
	Catalin Marinas, Will Deacon, Thomas Bogendoerfer, linux-mips,
	Madhavan Srinivasan, Michael Ellerman, Nicholas Piggin,
	Christophe Leroy, linuxppc-dev, Palmer Dabbelt, Alexandre Ghiti,
	linux-riscv, Josh Poimboeuf, Peter Zijlstra, Marco Elver,
	Dmitry Vyukov, kasan-dev, Alexander Potapenko

On Mon, Aug 18, 2025 at 11:57:16AM -0700, Nathan Chancellor wrote:
> s390 and x86 have required LLVM 15 since
>
>   30d17fac6aae ("scripts/min-tool-version.sh: raise minimum clang version to 15.0.0 for s390")
>   7861640aac52 ("x86/build: Raise the minimum LLVM version to 15.0.0")
>
> respectively. This series bumps the rest of the kernel to 15.0.0 to
> match, which allows for a decent number of clean ups.

Looks good to me!

Reviewed-by: Kees Cook <kees@kernel.org>

> I think it makes sense for either Andrew to carry this via -mm on a
> nonmm branch or me to carry this via the Kbuild tree, with the
> appropriate acks.

I vote you carry it with Kbuild. :)

--
Kees Cook

^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: [PATCH 01/10] kbuild: Bump minimum version of LLVM for building the kernel to 15.0.0
  2025-08-18 18:57 ` [PATCH 01/10] kbuild: Bump minimum " Nathan Chancellor
@ 2025-08-21 16:48   ` Nicolas Schier
  2025-08-21 17:27   ` Arnd Bergmann
  1 sibling, 0 replies; 5+ messages in thread
From: Nicolas Schier @ 2025-08-21 16:48 UTC (permalink / raw)
  To: Nathan Chancellor
  Cc: Andrew Morton, Arnd Bergmann, Kees Cook, Nick Desaulniers,
	Bill Wendling, Justin Stitt, linux-kernel, llvm, patches,
	linux-kbuild

On Mon, Aug 18, 2025 at 11:57:17AM -0700, Nathan Chancellor wrote:
> s390 and x86 have required LLVM 15 since
> 
>   30d17fac6aae ("scripts/min-tool-version.sh: raise minimum clang version to 15.0.0 for s390")
>   7861640aac52 ("x86/build: Raise the minimum LLVM version to 15.0.0")
> 
> respectively but most other architectures allow LLVM 13.0.1 or newer. In
> accordance with the recent minimum supported version of GCC bump that
> happened in
> 
>   118c40b7b503 ("kbuild: require gcc-8 and binutils-2.30")
> 
> do the same for LLVM to 15.0.0.
> 
> Of the supported releases of Arch Linux, Debian, Fedora, and OpenSUSE
> surveyed in evaluating this bump, this only leaves behind Debian
> Bookworm (14.0.6) and Ubuntu Jammy (14.0.0). Debian Trixie has 19.1.7
> and Ubuntu Noble has 18.1.3 (so there are viable upgrade paths) or users
> can use apt.llvm.org, which provides even newer packages for those
> distributions.
> 
> Signed-off-by: Nathan Chancellor <nathan@kernel.org>
> ---
> Cc: linux-kbuild@vger.kernel.org
> ---
>  Documentation/process/changes.rst | 2 +-
>  scripts/min-tool-version.sh       | 6 ++----
>  2 files changed, 3 insertions(+), 5 deletions(-)
> 

Acked-by: Nicolas Schier <nsc@kernel.org>

^ permalink raw reply	[flat|nested] 5+ messages in thread

* Re: [PATCH 01/10] kbuild: Bump minimum version of LLVM for building the kernel to 15.0.0
  2025-08-18 18:57 ` [PATCH 01/10] kbuild: Bump minimum " Nathan Chancellor
  2025-08-21 16:48   ` Nicolas Schier
@ 2025-08-21 17:27   ` Arnd Bergmann
  1 sibling, 0 replies; 5+ messages in thread
From: Arnd Bergmann @ 2025-08-21 17:27 UTC (permalink / raw)
  To: Nathan Chancellor, Andrew Morton
  Cc: Kees Cook, Nick Desaulniers, Bill Wendling, Justin Stitt,
	linux-kernel, llvm, patches, linux-kbuild

On Mon, Aug 18, 2025, at 20:57, Nathan Chancellor wrote:
> s390 and x86 have required LLVM 15 since
>
>   30d17fac6aae ("scripts/min-tool-version.sh: raise minimum clang 
> version to 15.0.0 for s390")
>   7861640aac52 ("x86/build: Raise the minimum LLVM version to 15.0.0")
>
> respectively but most other architectures allow LLVM 13.0.1 or newer. In
> accordance with the recent minimum supported version of GCC bump that
> happened in
>
>   118c40b7b503 ("kbuild: require gcc-8 and binutils-2.30")
>
> do the same for LLVM to 15.0.0.
>
> Of the supported releases of Arch Linux, Debian, Fedora, and OpenSUSE
> surveyed in evaluating this bump, this only leaves behind Debian
> Bookworm (14.0.6) and Ubuntu Jammy (14.0.0). Debian Trixie has 19.1.7
> and Ubuntu Noble has 18.1.3 (so there are viable upgrade paths) or users
> can use apt.llvm.org, which provides even newer packages for those
> distributions.
>
> Signed-off-by: Nathan Chancellor <nathan@kernel.org>
> ---

Acked-by: Arnd Bergmann <arnd@arndb.de>

^ permalink raw reply	[flat|nested] 5+ messages in thread

end of thread, other threads:[~2025-08-21 17:27 UTC | newest]

Thread overview: 5+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2025-08-18 18:57 [PATCH 00/10] Bump minimum supported version of LLVM for building the kernel to 15.0.0 Nathan Chancellor
2025-08-18 18:57 ` [PATCH 01/10] kbuild: Bump minimum " Nathan Chancellor
2025-08-21 16:48   ` Nicolas Schier
2025-08-21 17:27   ` Arnd Bergmann
2025-08-19  0:55 ` [PATCH 00/10] Bump minimum supported " Kees Cook

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).