Hello Linus, Please pull Kbuild updates for v6.14-rc1. Thank you The following changes since commit 9d89551994a430b50c4fffcb1e617a057fa76e20: Linux 6.13-rc6 (2025-01-05 14:13:40 -0800) are available in the Git repository at: git://git.kernel.org/pub/scm/linux/kernel/git/masahiroy/linux-kbuild.git tags/kbuild-v6.14 for you to fetch changes up to 695ed93bb30e03e9f826ee70abdd83f970741a37: kbuild: fix Clang LTO with CONFIG_OBJTOOL=n (2025-02-01 04:28:05 +0900) ---------------------------------------------------------------- Kbuild updates for v6.14 - Support multiple hook locations for maint scripts of Debian package - Remove 'cpio' from the build tool requirement - Introduce gendwarfksyms tool, which computes CRCs for export symbols based on the DWARF information - Support CONFIG_MODVERSIONS for Rust - Resolve all conflicts in the genksyms parser - Fix several syntax errors in genksyms ---------------------------------------------------------------- Ard Biesheuvel (1): kbuild: Strip runtime const RELA sections correctly HONG Yifan (1): kheaders: prevent `find` from seeing perl temp files Johannes Schauer Marin Rodrigues (1): kbuild: deb-pkg: allow hooks also in /usr/share/kernel Masahiro Yamada (36): kbuild: deb-pkg: do not include empty hook directories kbuild: refactor cross-compiling linux-headers package kbuild: suppress stdout from merge_config for silent builds kheaders: exclude include/generated/utsversion.h from kheaders_data.tar.xz kheaders: avoid unnecessary process forks of grep kheaders: rename the 'cpio_dir' variable to 'tmpdir' kheaders: use 'tar' instead of 'cpio' for copying files module: get symbol CRC back to unsigned modpost: zero-pad CRC values in modversion_info array genksyms: fix memory leak when the same symbol is added from source genksyms: fix memory leak when the same symbol is read from *.symref file genksyms: reduce the indentation in the for-loop in __add_symbol() genksyms: refactor the return points in the for-loop in __add_symbol() genksyms: use generic macros for hash table implementation genksyms: use uint32_t instead of unsigned long for calculating CRC ARC: migrate to the generic rule for built-in DTB genksyms: rename m_abstract_declarator to abstract_declarator genksyms: rename cvar_qualifier to type_qualifier genksyms: reduce type_qualifier directly to decl_specifier genksyms: fix 6 shift/reduce conflicts and 5 reduce/reduce conflicts genksyms: fix last 3 shift/reduce conflicts genksyms: remove Makefile hack genksyms: restrict direct-abstract-declarator to take one parameter-type-list genksyms: restrict direct-declarator to take one parameter-type-list genksyms: record attributes consistently for init-declarator genksyms: decouple ATTRIBUTE_PHRASE from type-qualifier genksyms: fix syntax error for attribute before abstract_declarator genksyms: fix syntax error for attribute before nested_declarator genksyms: fix syntax error for attribute after abstact_declarator genksyms: fix syntax error for attribute after 'struct' genksyms: fix syntax error for attribute after 'union' genksyms: fix syntax error for builtin (u)int*x*_t types genksyms: fix syntax error for attribute before init-declarator kconfig: fix file name in warnings when loading KCONFIG_DEFCONFIG_LIST kconfig: fix memory leak in sym_warn_unmet_dep() kbuild: fix Clang LTO with CONFIG_OBJTOOL=n Matthew Maurer (4): modules: Support extended MODVERSIONS info modpost: Produce extended MODVERSIONS information modpost: Allow extended modversions without basic MODVERSIONS Documentation/kbuild: Document storage of symbol information Rolf Eike Beer (1): kconfig: qconf: use preferred form of QString API Sami Tolvanen (19): tools: Add gendwarfksyms gendwarfksyms: Add address matching gendwarfksyms: Expand base_type gendwarfksyms: Add a cache for processed DIEs gendwarfksyms: Expand type modifiers and typedefs gendwarfksyms: Expand subroutine_type gendwarfksyms: Expand array_type gendwarfksyms: Expand structure types gendwarfksyms: Limit structure expansion gendwarfksyms: Add die_map debugging gendwarfksyms: Add symtypes output gendwarfksyms: Add symbol versioning gendwarfksyms: Add support for kABI rules gendwarfksyms: Add support for reserved and ignored fields gendwarfksyms: Add support for symbol type pointers export: Add __gendwarfksyms_ptr_ references to exported symbols kbuild: Add gendwarfksyms as an alternative to genksyms Documentation/kbuild: Add DWARF module versioning rust: Use gendwarfksyms + extended modversions for CONFIG_MODVERSIONS Torsten Hilbrich (1): kbuild: Fix signing issue for external modules Documentation/kbuild/gendwarfksyms.rst | 308 ++++++++++++ Documentation/kbuild/index.rst | 1 + Documentation/kbuild/modules.rst | 20 + Documentation/process/changes.rst | 6 - MAINTAINERS | 7 + arch/arc/Kconfig | 7 +- arch/arc/Makefile | 3 - arch/arc/boot/dts/Makefile | 9 +- arch/arc/configs/axs101_defconfig | 2 +- arch/arc/configs/axs103_defconfig | 2 +- arch/arc/configs/axs103_smp_defconfig | 2 +- arch/arc/configs/haps_hs_defconfig | 2 +- arch/arc/configs/haps_hs_smp_defconfig | 2 +- arch/arc/configs/hsdk_defconfig | 2 +- arch/arc/configs/nsim_700_defconfig | 2 +- arch/arc/configs/nsimosci_defconfig | 2 +- arch/arc/configs/nsimosci_hs_defconfig | 2 +- arch/arc/configs/nsimosci_hs_smp_defconfig | 2 +- arch/arc/configs/tb10x_defconfig | 2 +- arch/arc/configs/vdk_hs38_defconfig | 2 +- arch/arc/configs/vdk_hs38_smp_defconfig | 2 +- arch/powerpc/kernel/module_64.c | 24 +- arch/riscv/Makefile.postlink | 8 +- arch/s390/Makefile.postlink | 6 +- arch/x86/Makefile.postlink | 6 +- include/linux/export.h | 15 + include/linux/module.h | 4 +- init/Kconfig | 3 +- kernel/gen_kheaders.sh | 42 +- kernel/module/Kconfig | 55 +++ kernel/module/internal.h | 21 +- kernel/module/main.c | 94 +++- kernel/module/version.c | 47 +- rust/Makefile | 34 +- scripts/Makefile | 3 +- scripts/Makefile.build | 37 +- scripts/Makefile.defconf | 13 +- scripts/Makefile.lib | 13 +- scripts/Makefile.modinst | 2 +- scripts/Makefile.modpost | 2 + scripts/gendwarfksyms/.gitignore | 2 + scripts/gendwarfksyms/Makefile | 12 + scripts/gendwarfksyms/cache.c | 51 ++ scripts/gendwarfksyms/die.c | 166 +++++++ scripts/gendwarfksyms/dwarf.c | 1159 ++++++++++++++++++++++++++++++++++++++++++++++ scripts/gendwarfksyms/examples/kabi.h | 157 +++++++ scripts/gendwarfksyms/examples/kabi_ex.c | 30 ++ scripts/gendwarfksyms/examples/kabi_ex.h | 263 +++++++++++ scripts/gendwarfksyms/examples/symbolptr.c | 33 ++ scripts/gendwarfksyms/gendwarfksyms.c | 187 ++++++++ scripts/gendwarfksyms/gendwarfksyms.h | 296 ++++++++++++ scripts/gendwarfksyms/kabi.c | 336 ++++++++++++++ scripts/gendwarfksyms/symbols.c | 341 ++++++++++++++ scripts/gendwarfksyms/types.c | 481 +++++++++++++++++++ scripts/genksyms/Makefile | 18 - scripts/genksyms/genksyms.c | 107 ++--- scripts/genksyms/genksyms.h | 9 +- scripts/genksyms/lex.l | 17 +- scripts/genksyms/parse.y | 168 ++++--- scripts/kconfig/Makefile | 4 +- scripts/kconfig/confdata.c | 6 +- scripts/kconfig/qconf.cc | 8 +- scripts/kconfig/symbol.c | 1 + scripts/mod/modpost.c | 71 ++- scripts/package/PKGBUILD | 1 - scripts/package/builddeb | 24 +- scripts/package/install-extmod-build | 33 +- scripts/package/mkdebian | 2 +- 68 files changed, 4492 insertions(+), 307 deletions(-) create mode 100644 Documentation/kbuild/gendwarfksyms.rst create mode 100644 scripts/gendwarfksyms/.gitignore create mode 100644 scripts/gendwarfksyms/Makefile create mode 100644 scripts/gendwarfksyms/cache.c create mode 100644 scripts/gendwarfksyms/die.c create mode 100644 scripts/gendwarfksyms/dwarf.c create mode 100644 scripts/gendwarfksyms/examples/kabi.h create mode 100644 scripts/gendwarfksyms/examples/kabi_ex.c create mode 100644 scripts/gendwarfksyms/examples/kabi_ex.h create mode 100644 scripts/gendwarfksyms/examples/symbolptr.c create mode 100644 scripts/gendwarfksyms/gendwarfksyms.c create mode 100644 scripts/gendwarfksyms/gendwarfksyms.h create mode 100644 scripts/gendwarfksyms/kabi.c create mode 100644 scripts/gendwarfksyms/symbols.c create mode 100644 scripts/gendwarfksyms/types.c -- Best Regards Masahiro Yamada