2b91a2361d
commit b401efc120a399dfda1f4d2858a4de365c9b08ef upstream.
If a switch jump table's indirect branch is in a ".cold" subfunction in
.text.unlikely, objtool doesn't detect it, and instead prints a false
warning:
drivers/media/v4l2-core/v4l2-ioctl.o: warning: objtool: v4l_print_format.cold()+0xd6: sibling call from callable instruction with modified stack frame
drivers/hwmon/max6650.o: warning: objtool: max6650_probe.cold()+0xa5: sibling call from callable instruction with modified stack frame
drivers/media/dvb-frontends/drxk_hard.o: warning: objtool: init_drxk.cold()+0x16f: sibling call from callable instruction with modified stack frame
Fix it by comparing the function, instead of the section and offset.
Fixes:
|
||
---|---|---|
.. | ||
arch/x86 | ||
Documentation | ||
.gitignore | ||
arch.h | ||
Build | ||
builtin-check.c | ||
builtin-orc.c | ||
builtin.h | ||
cfi.h | ||
check.c | ||
check.h | ||
elf.c | ||
elf.h | ||
Makefile | ||
objtool.c | ||
orc.h | ||
orc_dump.c | ||
orc_gen.c | ||
special.c | ||
special.h | ||
sync-check.sh | ||
warn.h |