mirror of
https://github.com/torvalds/linux.git
synced 2026-07-27 09:36:22 +02:00
objtool/klp: Handle Clang .data..Lanon anonymous data sections
Clang generates anonymous data sections named .data..Lanon.<hash>. These need section-symbol references in the same way as .data..Lubsan (GCC) and .data..L__unnamed_ (Clang UBSAN) sections. Without this, convert_reloc_sym() fails when processing relocations that reference these sections. Acked-by: Song Liu <song@kernel.org> Signed-off-by: Josh Poimboeuf <jpoimboe@kernel.org>
This commit is contained in:
parent
9e4512d7de
commit
ff0cf5efef
|
|
@ -1030,14 +1030,15 @@ static int convert_reloc_secsym_to_sym(struct elf *elf, struct reloc *reloc)
|
|||
}
|
||||
|
||||
/*
|
||||
* Sections with anonymous or uncorrelated data (strings, UBSAN data)
|
||||
* need section symbol references.
|
||||
* Sections with anonymous or uncorrelated data (strings, UBSAN data, Clang
|
||||
* anonymous constants) need section symbol references.
|
||||
*/
|
||||
static bool is_uncorrelated_section(struct section *sec)
|
||||
{
|
||||
return is_string_sec(sec) ||
|
||||
strstarts(sec->name, ".data..Lubsan") || /* GCC */
|
||||
strstarts(sec->name, ".data..L__unnamed_"); /* Clang */
|
||||
strstarts(sec->name, ".data..L__unnamed_") || /* Clang */
|
||||
strstarts(sec->name, ".data..Lanon."); /* Clang */
|
||||
}
|
||||
|
||||
/*
|
||||
|
|
|
|||
Loading…
Reference in New Issue
Block a user