linux/Documentation
Linus Torvalds bb29b957ea Kbuild / Kconfig updates for 7.4
Kbuild:
 
 - Suppress compiler flags in debug info for external module builds
 
 - Use '-fmacro-prefix-map' in more places in the build
 
 - Merge initial set of changes from Lorenzo's speed up series, along
   with some fixes found through testing
 
   - Avoid allocating .modinfo in vmlinux
 
   - Speed up kallsyms by indexing symbols by token and outputting binary
     data to disk directly then including in assembly via .incbin
 
   - Don't sort $(NM) output when unnecessary
 
   - Only emit relocations on the final vmlinx link
 
   - Reimplement mksysmap in C
 
   - Move many cc-option and ld-option calls into the Kconfig stage to
     cache their results
 
   - Use pigz for gzip compression when available
 
 - Move gen_init_cpio and gen_initramfs.sh from usr/ to scripts/
 
 - Add a TOML configuration to scripts/container and update documentation
   accordingly
 
 - Add a generic, opt-in mechanism for checking that headers can compile
   standalone
 
 - Update machine function splitting argument for LLVM 24 rename in
   AutoFDO build
 
 - Miscellaneous minor clean ups, fixes, and hardening, mostly
   found/fixed via LLMs
 
 Kconfig:
 
 - Turn recursive ranges into an error
 
 - Fix savedefconfig for defaults that were adjusted for being out of
   range and revert a previously applied workaround
 
 - Improvements and hardening around integer and hexadecimal values
 
 - Emit a warning when selecting or implying a choice symbol, which has no
   effect
 
 - Emit a warning when KCONFIG_PROBABILITY is malformed
 
 - Introduce def_string / def_int / def_hex to mirror the existing
   def_bool / def_tristate to succinctly set a value and type at the same
   time.
 
 - Add cc-option-str and ld-option-str macros to act like Kbuild's
   cc-option and ld-option, returning the string when the option is
   supported, allowing many checks to be moved into Kconfig
 
 - Minor usability improvements to Kconfig tests
 
 Signed-off-by: Nathan Chancellor <nathan@kernel.org>
 -----BEGIN PGP SIGNATURE-----
 
 iHUEABYKAB0WIQR74yXHMTGczQHYypIdayaRccAalgUCatRBoQAKCRAdayaRccAa
 lg+JAQCyjmh+xC2lLSHFGB9qTzqYpVoIT0Z9/6EGx09nYgMr5AEAmzg/+dor5u+6
 vjklzsGs95G01yetVE5ifNNsLvVxTAo=
 =HbPA
 -----END PGP SIGNATURE-----

Merge tag 'kbuild-7.4-1' of git://git.kernel.org/pub/scm/linux/kernel/git/kbuild/linux

Pull Kbuild / Kconfig updates from Nathan Chancellor:
 "Kbuild:

   - Suppress compiler flags in debug info for external module builds

   - Use '-fmacro-prefix-map' in more places in the build

   - Merge initial set of changes from Lorenzo's speed up series, along
     with some fixes found through testing:

     - Avoid allocating .modinfo in vmlinux

     - Speed up kallsyms by indexing symbols by token and outputting
       binary data to disk directly then including in assembly via
       .incbin

     - Don't sort $(NM) output when unnecessary

     - Only emit relocations on the final vmlinx link

     - Reimplement mksysmap in C

     - Move many cc-option and ld-option calls into the Kconfig stage to
       cache their results

     - Use pigz for gzip compression when available

   - Move gen_init_cpio and gen_initramfs.sh from usr/ to scripts/

   - Add a TOML configuration to scripts/container and update
     documentation accordingly

   - Add a generic, opt-in mechanism for checking that headers can
     compile standalone

   - Update machine function splitting argument for LLVM 24 rename in
     AutoFDO build

   - Miscellaneous minor clean ups, fixes, and hardening, mostly
     found/fixed via LLMs

  Kconfig:

   - Turn recursive ranges into an error

   - Fix savedefconfig for defaults that were adjusted for being out of
     range and revert a previously applied workaround

   - Improvements and hardening around integer and hexadecimal values

   - Emit a warning when selecting or implying a choice symbol, which
     has no effect

   - Emit a warning when KCONFIG_PROBABILITY is malformed

   - Introduce def_string / def_int / def_hex to mirror the existing
     def_bool / def_tristate to succinctly set a value and type at the
     same time.

   - Add cc-option-str and ld-option-str macros to act like Kbuild's
     cc-option and ld-option, returning the string when the option is
     supported, allowing many checks to be moved into Kconfig

   - Minor usability improvements to Kconfig tests"

* tag 'kbuild-7.4-1' of git://git.kernel.org/pub/scm/linux/kernel/git/kbuild/linux: (59 commits)
  kbuild: AutoFDO: Update split machine function argument for upstream rename
  kbuild: Mark the initcall ordering recipe as recursive
  kbuild: Mark the gzip recipes as recursive
  localmodconfig: Explicitly report boolean configs during integrity check
  scripts/make_fit: Ignore schema checks when decomposing DTBs
  clang-tools: Import os for broken pipe handling
  kconfig: use the value argument in sym_get_near_range_bound()
  kconfig: fix infinite loop in conf_choice() when no choice value is visible
  kconfig: cleanup stale comment about 'keys' array
  kconfig: Improve ergonomics around disabling warnings with cc-option
  scripts/Kconfig.toolchain: Drop compiler symbols from dependencies
  checkkconfigsymbols.py: Parse Git status output line by line
  gen_init_cpio: stop parsing on lines with a missing argument list
  .gitignore: drop Module.markers
  .gitignore: ignore pacman package signatures
  kbuild: add header check facility as a manually run static analyzer
  Documentation: dev-tools: refer to user ID rather than id
  Documentation: dev-tools: update container.rst with config file
  scripts: add TOML config to container tool
  kconfig: tests: {old,save}defconfig: Forward dynamic keyword arguments
  ...
2026-10-21 10:45:44 -10:00
..
ABI It was a reasonably busy cycle for docs; changes include: 2026-10-20 14:38:38 -10:00
accel
accounting
admin-guide RCU updates: 2026-10-21 10:04:13 -10:00
arch It was a reasonably busy cycle for docs; changes include: 2026-10-20 14:38:38 -10:00
block A handful of late-arriving fixes, a Japanese translation that was ready 2026-08-26 09:25:12 -07:00
bpf bpf: Add KF_PERFMON kfunc flag 2026-09-10 16:55:47 -07:00
cdrom
core-api It was a reasonably busy cycle for docs; changes include: 2026-10-20 14:38:38 -10:00
cpu-freq
crypto lib: Move SipHash into lib/crypto/ 2026-10-03 18:30:12 +02:00
dev-tools Documentation: dev-tools: refer to user ID rather than id 2026-10-02 22:17:22 +02:00
devicetree spi: Fixes for v7.3 2026-10-11 11:33:26 -07:00
doc-guide docs: kernel-doc: inform that '@' applies to other fields 2026-09-15 13:02:10 -06:00
driver-api Kbuild / Kconfig updates for 7.4 2026-10-21 10:45:44 -10:00
edac
fault-injection nvme: add opcode filtering for fault injection 2026-08-19 07:51:23 -07:00
fb
features It was a reasonably busy cycle for docs; changes include: 2026-10-20 14:38:38 -10:00
filesystems Kbuild / Kconfig updates for 7.4 2026-10-21 10:45:44 -10:00
firmware_class
firmware-guide
fpga
gpu DRM Rust changes for v7.3-rc1 2026-08-10 14:48:11 +10:00
hid HID: add documentation and Coccinelle script for FF registration race 2026-08-14 14:46:20 +02:00
hwmon hwmon: (cgbc-hwmon) Add missing sensors 2026-09-13 21:19:48 -07:00
i2c
iio
images
infiniband
input Documentation: input: Fix bracket 2026-09-15 13:34:14 -06:00
kbuild kbuild: Mark the gzip recipes as recursive 2026-10-11 01:20:04 +01:00
kernel-hacking
leds
litmus-tests
livepatch Documentation: livepatch: Point klp_callbacks kernel-doc at livepatch_external.h 2026-09-07 09:47:56 -06:00
locking
maintainer
mhi
misc-devices docs: misc-devices/spear-pcie-gadget.txt: Fix bracket and whitespace 2026-09-07 09:54:06 -06:00
mm mm.git review status for linus..mm-stable 2026-08-27 09:17:06 -07:00
netlabel
netlink net: devmem: document that bind-tx is unprivileged by design 2026-09-22 18:40:15 -07:00
networking strparser: make sure __strp_recv isn't running before tearing down the parser 2026-10-06 18:29:12 -07:00
nvdimm
nvme
PCI Documentation: PCI: Document how to write PCI Host Controller drivers 2026-08-12 14:20:48 -05:00
pcmcia
peci
power
process Kbuild / Kconfig updates for 7.4 2026-10-21 10:45:44 -10:00
RCU doc: Update stallwarn.rst based on RCU Tasks Trace as SRCU 2026-09-17 15:42:03 -07:00
rust rust: kunit: use file!() inside kunit_assert! 2026-10-03 14:04:56 +02:00
scheduler It was a reasonably busy cycle for docs; changes include: 2026-10-20 14:38:38 -10:00
scsi scsi: leapraid: Standardize NCQ priority sysfs attributes 2026-08-23 21:57:41 -04:00
security Landlock update for v7.3-rc1 2026-08-21 12:28:35 -07:00
sound ALSA: usb-audio: Reverse MIXER_GET_CUR_BROKEN as MIXER_GET_CUR_OK 2026-08-23 11:03:34 +02:00
sphinx
sphinx-includes
sphinx-static
spi
staging
sunrpc/xdr nfsd: add support to CB_NOTIFY for dir attribute changes 2026-08-10 09:54:35 -04:00
target
tee
timers docs: timers: hpet: Document userspace API and ioctl commands 2026-09-29 16:55:31 -06:00
tools
trace landlock: Fix tracepoint contract documentation 2026-09-20 14:13:33 +02:00
translations It was a reasonably busy cycle for docs; changes include: 2026-10-20 14:38:38 -10:00
usb
userspace-api docs: ioctl: fix stale NVMe registry entry and note N conflict 2026-09-15 13:44:43 -06:00
virt Documentation: virt: Fix the struct snp_guest_request_ioctl name in sev-guest.rst 2026-09-15 13:28:10 -06:00
w1
watchdog docs: watchdog: npcm: Add reset status description 2026-08-10 09:00:04 -07:00
wmi
.gitignore
.renames.txt
atomic_bitops.txt
atomic_t.txt
Changes
CodingStyle
conf.py docs: conf.py: fix the 'utf-8' typo 2026-08-11 10:45:54 -06:00
docutils.conf
index.rst
Kconfig
Makefile docs: Makefile: Add a testdocs target for the documentation unit tests 2026-09-26 09:27:05 -06:00
memory-barriers.txt
SubmittingPatches
subsystem-apis.rst