[PATCH v4 01/22] objtool/klp: Fix .kcfi_traps special section extraction
Song Liu
song at kernel.org
Tue Aug 11 16:27:23 PDT 2026
On Sat, Aug 8, 2026 at 4:18 PM Josh Poimboeuf <jpoimboe at kernel.org> wrote:
>
> create_fake_symbols() creates a symbol per entry for special sections.
> It does so in two steps: first for the sections which have
> ANNOTATE_DATA_SPECIAL annotations, then for the rest, using entsize or
> the reloc count to infer the entry size. The second step skips the
> sections already handled by the first one by looking for a symbol at
> offset 0.
>
> That heuristic is too fuzzy: with Clang and CONFIG_CFI, it misfires on
> .kcfi_traps because Clang emits a .Ltmp* assembler-local label at the
> start of the section, so no symbols are created and
> clone_special_sections() extracts nothing. klp-build still reports
> SUCCESS, but the livepatch module has no __kcfi_traps section and the
> traps for the patched functions are lost.
>
> Look for the actual fake symbols created by the first step instead.
>
> Fixes: da4326573ae8d ("objtool/klp: Fix kCFI trap handling")
> Reported-by: Joe Lawrence <joe.lawrence at redhat.com>
> Closes: https://lore.kernel.org/r/akQNqlfFC0T5pcMa@redhat.com
> Signed-off-by: Josh Poimboeuf <jpoimboe at kernel.org>
Acked-by: Song Liu <song at kernel.org>
More information about the linux-arm-kernel
mailing list