Skip to contentSkip to conversation

Kbuild and Kconfig changes for v7.1

GIT PULL Merged Nicolas Schier 2 participants 2 messages Apr 12 – Apr 14

Subsystems (5)
Kbuild s390 EFI LoongArch +1 more subsystems
lore
Share & tools
lore

Nicolas Schier

author maintainer
#0 lore raw

Hi Linus,

please pull these changes to Kbuild and Kconfig for v7.1. Please let me know if anything is incorrect and not matching your standards.

All changes have been in -next, most for several cycles without reported problems.

Thanks and kind regards,
Nicolas

---

The following changes since commit 6de23f81a5e08be8fbf5e8d7e9febc72a5b5f27f:

Linux 7.0-rc1 (2026-02-22 13:18:59 -0800)

are available in the Git repository at:

ssh://[email protected]/pub/scm/linux/kernel/git/kbuild/linux.git tags/kbuild-7.1-1

for you to fetch changes up to 404927758daac5ec4594071e033c1fa6ee9ca9b6:

kbuild: expand inlining hints with -fdiagnostics-show-inlining-chain (2026-04-07 21:48:44 +0200)

----------------------------------------------------------------
Kbuild/Kconfig updates for 7.1

Kbuild changes
==============

* tools/build: Reject unexpected values for LLVM=

* kbuild: uapi: remove usage of toolchain headers

* kbuild: Switch from '-fms-extensions' to '-fms-anonymous-structs'

    when available (currently: clang >= 23.0.0)

* kbuild: Reduce the number of compiler-generated suffixes for clang thin-lto build

* kbuild: reduce output spam ("GEN Makefile") when building out of tree

* check-uapi: improve portability for testing headers

* uapi: also test UAPI headers against C++ compilers

* kbuild: vdso_install: drop build ID architecture allow-list

* checksyscalls: only run when necessary

* Documentation: kbuild: Update the debug information notes in reproducible-builds.rst

* kconfig: forbid multiple entries with the same symbol in a choice

* kbuild: expand inlining hints with -fdiagnostics-show-inlining-chain

Kconfig changes
===============

* kconfig: Error out on duplicated kconfig inclusion

Cc Alexander Coffin <[email protected]>
Cc Ard Biesheuvel <[email protected]>
Cc Arnd Bergmann <[email protected]>
Cc Bill Wendling <[email protected]>
Cc David Howells <[email protected]>
Cc Dodji Seketeli <[email protected]>
Cc H. Peter Anvin <[email protected]>
Cc Helge Deller <[email protected]>
Cc John Moon <[email protected]>
Cc Jonathan Corbet <[email protected]>
Cc Josh Poimboeuf <[email protected]>
Cc Justin Stitt <[email protected]>
Cc Kees Cook <[email protected]>
Cc Masahiro Yamada <[email protected]>
Cc Nathan Chancellor <[email protected]>
Cc Nick Desaulniers <[email protected]>
Cc Shuah Khan <[email protected]>
Cc Song Liu <[email protected]>
Cc Thomas Weißschuh <[email protected]>
Cc Yonghong Song <[email protected]>

----------------------------------------------------------------
Arnd Bergmann (3):
check-uapi: link into shared objects
check-uapi: honor ${CROSS_COMPILE} setting
check-uapi: use dummy libc includes

Justin Stitt (1):
kbuild: expand inlining hints with -fdiagnostics-show-inlining-chain

Masahiro Yamada (1):
kconfig: forbid multiple entries with the same symbol in a choice

Nathan Chancellor (3):
kbuild: Consolidate C dialect options
kbuild: Use '-fms-anonymous-structs' if it is available
Documentation: kbuild: Update the debug information notes in reproducible-builds.rst

Nicolas Schier (1):
kconfig: Error out on duplicated kconfig inclusion

Thomas Weißschuh (25):
Documentation/llvm: drop note about LLVM=0
tools/build: Reject unexpected values for LLVM=
hexagon: uapi: Fix structure alignment attribute
kbuild: uapi: test linux/bpf_perf_event.h on powerpc
kbuild: uapi: deduplicate linux/bpf_perf_event.h exclusions
kbuild: uapi: completely exclude linux/bpf_perf_event.h on nios2
kbuild: uapi: only use dummy-include for headers which use libc
kbuild: uapi: provide stub includes for some libc headers
kbuild: uapi: use custom stub headers instead of libc ones
kbuild: uapi: simplify libc dependency logic
kbuild: uapi: remove now unneeded guard headers
kbuild: reduce output spam when building out of tree
kbuild: uapi: move some compiler arguments out of the command definition
kbuild: uapi: move all include path flags together
kbuild: uapi: handle UML in architecture-specific exclusion lists
kbuild: uapi: provide a C++ compatible dummy definition of NULL
kbuild: uapi: also test UAPI headers against C++ compilers
kbuild: vdso_install: split out the readelf invocation
kbuild: vdso_install: hide readelf warnings
kbuild: vdso_install: gracefully handle images without build ID
kbuild: vdso_install: drop build ID architecture allow-list
checksyscalls: move path to reference table to a variable
checksyscalls: fail on all intermediate errors
checksyscalls: only run when necessary
checksyscalls: move instance functionality into generic code

Yonghong Song (1):
kbuild: Reduce the number of compiler-generated suffixes for clang thin-lto build

 Documentation/kbuild/llvm.rst                      |  4 --
 Documentation/kbuild/reproducible-builds.rst       |  7 ++-
 Kbuild                                             | 14 +++--
 Makefile                                           | 35 +++++++++---
 arch/arm64/kernel/vdso32/Makefile                  |  3 +-
 arch/hexagon/include/uapi/asm/sigcontext.h         |  2 +-
 arch/loongarch/vdso/Makefile                       |  2 +-
 arch/mips/Makefile                                 |  6 +-
 arch/parisc/boot/compressed/Makefile               |  2 +-
 arch/powerpc/boot/Makefile                         |  3 +-
 arch/s390/Makefile                                 |  3 +-
 arch/s390/purgatory/Makefile                       |  3 +-
 arch/x86/Makefile                                  |  6 +-
 arch/x86/boot/compressed/Makefile                  |  6 +-
 drivers/firmware/efi/libstub/Makefile              |  3 +-
 init/Kconfig                                       |  5 ++
 scripts/Makefile.vdsoinst                          |  7 ++-
 scripts/Makefile.warn                              |  5 --
 scripts/check-uapi.sh                              | 19 ++++---
 scripts/checksyscalls.sh                           | 11 +++-
 scripts/kconfig/lexer.l                            |  4 +-
 scripts/kconfig/lkc.h                              |  3 +-
 scripts/kconfig/parser.y                           | 15 ++---
 scripts/kconfig/tests/err_repeated_inc/Kconfig     |  3 +
 .../kconfig/tests/err_repeated_inc/Kconfig.inc1    |  4 ++
 .../kconfig/tests/err_repeated_inc/Kconfig.inc2    |  3 +
 .../kconfig/tests/err_repeated_inc/Kconfig.inc3    |  1 +
 scripts/kconfig/tests/err_repeated_inc/__init__.py | 10 ++++
 .../kconfig/tests/err_repeated_inc/expected_stderr |  2 +
 scripts/kconfig/util.c                             | 31 ++++++++++-
 tools/scripts/Makefile.include                     |  2 +
 usr/dummy-include/endian.h                         |  0
 usr/dummy-include/limits.h                         |  8 +++
 usr/dummy-include/netinet/if_ether.h               |  0
 usr/dummy-include/netinet/in.h                     |  0
 usr/dummy-include/stdbool.h                        |  7 ---
 usr/dummy-include/stddef.h                         | 13 +++++
 usr/dummy-include/stdint.h                         | 17 ++++++
 usr/dummy-include/stdlib.h                         |  7 ---
 usr/dummy-include/string.h                         | 12 ++++
 usr/dummy-include/sys/ioctl.h                      |  0
 usr/dummy-include/sys/socket.h                     | 12 ++++
 usr/dummy-include/sys/time.h                       |  3 +
 usr/dummy-include/sys/types.h                      |  0
 usr/dummy-include/time.h                           |  0
 usr/dummy-include/unistd.h                         |  0
 usr/include/Makefile                               | 65 ++++++++++++++--------
 47 files changed, 251 insertions(+), 117 deletions(-)
 create mode 100644 scripts/kconfig/tests/err_repeated_inc/Kconfig
 create mode 100644 scripts/kconfig/tests/err_repeated_inc/Kconfig.inc1
 create mode 100644 scripts/kconfig/tests/err_repeated_inc/Kconfig.inc2
 create mode 100644 scripts/kconfig/tests/err_repeated_inc/Kconfig.inc3
 create mode 100644 scripts/kconfig/tests/err_repeated_inc/__init__.py
 create mode 100644 scripts/kconfig/tests/err_repeated_inc/expected_stderr
 create mode 100644 usr/dummy-include/endian.h
 create mode 100644 usr/dummy-include/limits.h
 create mode 100644 usr/dummy-include/netinet/if_ether.h
 create mode 100644 usr/dummy-include/netinet/in.h
 delete mode 100644 usr/dummy-include/stdbool.h
 create mode 100644 usr/dummy-include/stddef.h
 create mode 100644 usr/dummy-include/stdint.h
 delete mode 100644 usr/dummy-include/stdlib.h
 create mode 100644 usr/dummy-include/string.h
 create mode 100644 usr/dummy-include/sys/ioctl.h
 create mode 100644 usr/dummy-include/sys/socket.h
 create mode 100644 usr/dummy-include/sys/time.h
 create mode 100644 usr/dummy-include/sys/types.h
 create mode 100644 usr/dummy-include/time.h
 create mode 100644 usr/dummy-include/unistd.h
Signature · 1 line
Nicolas
merge bot Merged
#1 lore raw
The pull request you sent on Sun, 12 Apr 2026 17:46:47 +0200:

The pull request you sent on Sun, 12 Apr 2026 17:46:47 +0200:

Quoted 1 line

ssh://[email protected]/pub/scm/linux/kernel/git/kbuild/linux.git tags/kbuild-7.1-1

has been merged into torvalds/linux.git:
https://git.kernel.org/torvalds/c/5d0d3623303775d750e122a2542d1a26c8573d38

Thank you!

Signature · 2 lines
Deet-doot-dot, I am a bot.
https://korg.docs.kernel.org/prtracker.html