The Kbuild changes have been merged for the in-development Linux 6.18 kernel.
The Kbuild pull for Linux 6.18 is the first under new maintainership and brings a few changes worth calling out.
First up, the minimum supported LLVM/Clang compiler version to build the Linux kernel has been increased to LLVM 15.0. This is a reasonable new minimum version with LLVM/Clang 15 having come out in September 2022 and most using Clang to build the Linux kernel tend to be more on the leading-edge.
The Kbuild changes for the Linux 6.18 kernel also unify and consolidate all the CONFIG_WERROR / W=e handling for promoting compiler warnings to errors. Those options are also now respected when building the user-space programs living within the Linux kernel tree.
The Kbuild changes also include support for copy_file_range() and data segment alignment in gen_init_cpio for improving performance on file-systems with reflinks like Btrfs and XFS. The gen_init_cpio tool for building a CPIO archive for a root file-system image and will now enjoy better performance on the likes of Btrfs and XFS. The patch explains:
“Add filename zero-padding logic to gen_init_cpio, which can be triggered via the new -a
parameter. Performance and storage utilization is improved for Btrfs and XFS workloads, as copy_file_range can reflink the entire source file into a filesystem block-size aligned destination offset within the cpio archive.”
More details on these Kbuild changes for Linux 6.18 via this pull.