[PATCH 00/22] objtool: CONFIG_OBJTOOL_WERROR fixes and cleanups
From: Josh Poimboeuf
Date: Mon Mar 24 2025 - 17:56:29 EST
Since CONFIG_OBJTOOL_WERROR got merged into -tip, a lot of warnings have
been reported. Fix those along with several other improvements.
Cc: Raju Rangoju <Raju.Rangoju@xxxxxxx>
CC: Mark Brown <broonie@xxxxxxxxxx>
Cc: Christoph Hellwig <hch@xxxxxx>
Cc: Sagi Grimberg <sagi@xxxxxxxxxxx>
Cc: Chaitanya Kulkarni <kch@xxxxxxxxxx>
Cc: Mauro Carvalho Chehab <mchehab@xxxxxxxxxx>
Cc: Dmitry Torokhov <dmitry.torokhov@xxxxxxxxx>
Cc: Srinivas Kandagatla <srinivas.kandagatla@xxxxxxxxxx>
Cc: Liam Girdwood <lgirdwood@xxxxxxxxx>
Cc: Mark Brown <broonie@xxxxxxxxxx>
Cc: Kees Cook <kees@xxxxxxxxxx>
Josh Poimboeuf (22):
objtool: Fix detection of consecutive jump tables
objtool: Warn when disabling unreachable warnings
objtool: Ignore entire functions rather than instructions
objtool: Fix X86_FEATURE_SMAP alternative handling
objtool: Fix CONFIG_OBJTOOL_WERROR for vmlinux.o
objtool: Fix init_module() handling
objtool: Silence more KCOV warnings
objtool: Properly disable uaccess validation
objtool: Improve error handling
objtool: Reduce CONFIG_OBJTOOL_WERROR verbosity
objtool: Fix up some outdated references to ENTRY/ENDPROC
objtool: Remove --no-unreachable for noinstr-only vmlinux.o runs
objtool: Remove redundant opts.noinstr dependency
spi: amd: Fix out-of-bounds stack access in amd_set_spi_freq()
nvmet: Fix out-of-bounds stack access in nvmet_ctrl_state_show()
media: dib8000: Prevent divide-by-zero in dib8000_set_dds()
panic: Disable SMAP in __stack_chk_fail()
Input: cyapa - remove undefined behavior in cyapa_update_fw_store()
ASoC: codecs: wcd934x: Remove undefined behavior in
wcd934x_slim_irq_handler()
regulator: rk808: Remove undefined behavior in rk806_set_mode_dcdc()
pwm: mediatek: Prevent divide-by-zero in pwm_mediatek_config()
lkdtm: Obfuscate do_nothing() pointer
arch/x86/include/asm/arch_hweight.h | 8 +-
arch/x86/include/asm/smap.h | 23 +-
arch/x86/include/asm/xen/hypercall.h | 6 +-
drivers/input/mouse/cyapa.c | 4 +-
drivers/media/dvb-frontends/dib8000.c | 5 +-
drivers/misc/lkdtm/perms.c | 14 +-
drivers/nvme/target/debugfs.c | 2 +-
drivers/pwm/pwm-mediatek.c | 8 +-
drivers/regulator/rk808-regulator.c | 4 +-
drivers/spi/spi-amd.c | 2 +-
include/linux/linkage.h | 4 -
include/linux/objtool.h | 2 +-
kernel/panic.c | 6 +
scripts/Makefile.lib | 2 +-
scripts/Makefile.vmlinux_o | 15 +-
sound/soc/codecs/wcd934x.c | 2 +-
tools/objtool/Documentation/objtool.txt | 10 +-
tools/objtool/arch/x86/special.c | 38 +-
tools/objtool/builtin-check.c | 146 ++++---
tools/objtool/check.c | 525 ++++++++++++------------
tools/objtool/elf.c | 28 +-
tools/objtool/include/objtool/builtin.h | 6 +-
tools/objtool/include/objtool/check.h | 3 +-
tools/objtool/include/objtool/elf.h | 28 +-
tools/objtool/include/objtool/objtool.h | 2 +-
tools/objtool/include/objtool/special.h | 4 +-
tools/objtool/include/objtool/warn.h | 13 +-
tools/objtool/objtool.c | 11 +-
tools/objtool/special.c | 12 +-
29 files changed, 477 insertions(+), 456 deletions(-)
--
2.48.1