Linux kernel mirror (for testing) git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git
kernel os linux
1
fork

Configure Feed

Select the types of activity you want to include in your feed.

Merge tag 'objtool_urgent_for_v6.14_rc3' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip

Pull objtool fixes from Borislav Petkov:

- Move a warning about a lld.ld breakage into the verbose setting as
said breakage has been fixed in the meantime

- Teach objtool to ignore dangling jump table entries added by Clang

* tag 'objtool_urgent_for_v6.14_rc3' of git://git.kernel.org/pub/scm/linux/kernel/git/tip/tip:
objtool: Move dodgy linker warn to verbose
objtool: Ignore dangling jump table entries

+10 -1
+10 -1
tools/objtool/check.c
··· 1976 1976 reloc_addend(reloc) == pfunc->offset) 1977 1977 break; 1978 1978 1979 + /* 1980 + * Clang sometimes leaves dangling unused jump table entries 1981 + * which point to the end of the function. Ignore them. 1982 + */ 1983 + if (reloc->sym->sec == pfunc->sec && 1984 + reloc_addend(reloc) == pfunc->offset + pfunc->len) 1985 + goto next; 1986 + 1979 1987 dest_insn = find_insn(file, reloc->sym->sec, reloc_addend(reloc)); 1980 1988 if (!dest_insn) 1981 1989 break; ··· 2001 1993 alt->insn = dest_insn; 2002 1994 alt->next = insn->alts; 2003 1995 insn->alts = alt; 1996 + next: 2004 1997 prev_offset = reloc_offset(reloc); 2005 1998 } 2006 1999 ··· 2274 2265 2275 2266 if (sec->sh.sh_entsize != 8) { 2276 2267 static bool warned = false; 2277 - if (!warned) { 2268 + if (!warned && opts.verbose) { 2278 2269 WARN("%s: dodgy linker, sh_entsize != 8", sec->name); 2279 2270 warned = true; 2280 2271 }