]> git.ipfire.org Git - thirdparty/kernel/linux.git/commit
integrity: Eliminate weak definition of arch_get_secureboot()
authorNathan Chancellor <nathan@kernel.org>
Mon, 9 Mar 2026 20:37:02 +0000 (13:37 -0700)
committerMimi Zohar <zohar@linux.ibm.com>
Fri, 13 Mar 2026 15:37:13 +0000 (11:37 -0400)
commit7caedbb5ade345df0eec0bf01035c780919a9f56
treeed055459e8b4769b4d9f652a3f6bce04e3c1fb08
parent5d05360d748d477acfe1f0d05593c12beb507387
integrity: Eliminate weak definition of arch_get_secureboot()

security/integrity/secure_boot.c contains a single __weak function,
which breaks recordmcount when building with clang:

  $ make -skj"$(nproc)" ARCH=powerpc LLVM=1 ppc64_defconfig security/integrity/secure_boot.o
  Cannot find symbol for section 2: .text.
  security/integrity/secure_boot.o: failed

Introduce a Kconfig symbol, CONFIG_HAVE_ARCH_GET_SECUREBOOT, to indicate
that an architecture provides a definition of arch_get_secureboot().
Provide a static inline stub when this symbol is not defined to achieve
the same effect as the __weak function, allowing secure_boot.c to be
removed altogether. Move the s390 definition of arch_get_secureboot()
out of the CONFIG_KEXEC_FILE block to ensure it is always available, as
it does not actually depend on KEXEC_FILE.

Reported-by: Arnd Bergmann <arnd@arndb.de>
Fixes: 31a6a07eefeb ("integrity: Make arch_ima_get_secureboot integrity-wide")
Signed-off-by: Nathan Chancellor <nathan@kernel.org>
Acked-by: Arnd Bergmann <arnd@arndb.de>
Signed-off-by: Mimi Zohar <zohar@linux.ibm.com>
arch/Kconfig
arch/powerpc/Kconfig
arch/s390/Kconfig
arch/s390/kernel/ipl.c
include/linux/secure_boot.h
security/integrity/Makefile
security/integrity/secure_boot.c [deleted file]