diff options
author | Ingo Molnar <mingo@kernel.org> | 2025-03-04 11:15:26 +0100 |
---|---|---|
committer | Ingo Molnar <mingo@kernel.org> | 2025-03-04 11:15:26 +0100 |
commit | 1b4c36f9b11e4a68f6174d1b6542b50cd29cddd2 (patch) | |
tree | 735b11a744d0acd18a1d7b7a4a5fa63fc6d23b92 /arch/mips/boot/tools/relocs.c | |
parent | d0ba9bcf001c7907e4755b0e498f5ff9d1a228ef (diff) | |
parent | f6bdaab79ee4228a143ee1b4cb80416d6ffc0c63 (diff) |
Merge branch 'x86/urgent' into x86/cpu, to pick up dependent commits
Signed-off-by: Ingo Molnar <mingo@kernel.org>
Diffstat (limited to 'arch/mips/boot/tools/relocs.c')
-rw-r--r-- | arch/mips/boot/tools/relocs.c | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/arch/mips/boot/tools/relocs.c b/arch/mips/boot/tools/relocs.c index a88d66c46d7f..9863e1d5c62e 100644 --- a/arch/mips/boot/tools/relocs.c +++ b/arch/mips/boot/tools/relocs.c @@ -468,6 +468,8 @@ static void walk_relocs(int (*process)(struct section *sec, Elf_Rel *rel, Elf_Sym *sym, const char *symname)) { int i; + struct section *extab_sec = sec_lookup("__ex_table"); + int extab_index = extab_sec ? extab_sec - secs : -1; /* Walk through the relocations */ for (i = 0; i < ehdr.e_shnum; i++) { @@ -480,6 +482,9 @@ static void walk_relocs(int (*process)(struct section *sec, Elf_Rel *rel, if (sec->shdr.sh_type != SHT_REL_TYPE) continue; + if (sec->shdr.sh_info == extab_index) + continue; + sec_symtab = sec->link; sec_applies = &secs[sec->shdr.sh_info]; if (!(sec_applies->shdr.sh_flags & SHF_ALLOC)) |