[PATCH 00/14] objtool/klp: sympos/module/alternative/etc fixes

Josh Poimboeuf <[email protected]> Sun, 2 Aug 2026 20:24:22 -0700
Newsgroups org.kernel.vger.linux-modules,org.kernel.vger.linux-kernel,org.kernel.vger.live-patching
Message-ID <[email protected]>
This consolidates fixes for the klp-build issues reported by Joe over
the last several weeks, plus some more things I found while
testing/reviewing.

Fun stuff like symbol resolution, module dependencies, alternatives.

MODULE MAINTAINERS: see patches 7 and 8, you can probably ignore the
rest.

Joe Lawrence (2):
  objtool/klp: Normalize Module.symvers paths to module names
  objtool/klp: Allow new references to module exports

Josh Poimboeuf (12):
  objtool/klp: Fix module name normalization for paths with dots
  objtool/klp: Fix false module dependencies caused by dead relocs
  objtool/klp: Skip hidden directories when finding objects
  objtool/klp: Add .klp.symid for sympos disambiguation
  objtool/klp: Fix symbol resolution for duplicate data symbols
  module: Add module_kallsyms_on_each_core_symbol()
  objtool/klp,livepatch: Resolve module symbols against core kallsyms
  objtool/klp: Fix size of empty special section entries
  objtool/klp: Ignore replacement offset of empty x86 alternatives
  objtool/klp: Explicitly disallow patching or referencing init
    code/data
  objtool/klp: Fix cross-module klp relocation section naming
  objtool/klp: Don't match local symbols against exports

 include/asm-generic/vmlinux.lds.h       |  10 +-
 include/linux/module.h                  |  11 +
 kernel/livepatch/core.c                 |   2 +-
 kernel/module/kallsyms.c                |  46 +++
 scripts/Makefile.vmlinux_o              |   3 +
 scripts/livepatch/klp-build             |  17 +-
 scripts/mod/modpost.c                   |   1 +
 tools/objtool/Build                     |   4 +-
 tools/objtool/arch/x86/special.c        |  27 ++
 tools/objtool/builtin-check.c           |   7 +
 tools/objtool/check.c                   |   7 +
 tools/objtool/elf.c                     |  13 +
 tools/objtool/include/objtool/builtin.h |   1 +
 tools/objtool/include/objtool/klp.h     |  32 +-
 tools/objtool/include/objtool/special.h |   7 +
 tools/objtool/klp-diff.c                | 192 ++++++-----
 tools/objtool/klp-post-link.c           |  53 +--
 tools/objtool/klp-symid.c               | 117 +++++++
 tools/objtool/klp-sympos.c              | 441 ++++++++++++++++++++++++
 19 files changed, 877 insertions(+), 114 deletions(-)
 create mode 100644 tools/objtool/klp-symid.c
 create mode 100644 tools/objtool/klp-sympos.c

-- 
2.54.0