mbox series

[v3,0/2] objtool: Add option to fail build on vmlinux warnings

Message ID 20250113-objtool-strict-v3-0-8b51f94957fb@google.com (mailing list archive)
Headers show
Series objtool: Add option to fail build on vmlinux warnings | expand

Message

Brendan Jackman Jan. 13, 2025, 2:05 p.m. UTC
This adds an option to objtool to exit with an error when it enounters
warnings.

Then, it adds a config to enable that flag. This enables you to fail
the build e.g. when noinstr is violated.

When that happens, you also get a more verbose log, for example when
failing noisntr validation it dumps disassembly of the offending code.

Signed-off-by: Brendan Jackman <jackmanb@google.com>
---
Changes in v3:
- Added --verbose to objtool args (equivalent to OBJTOOL_VERBOSE=1, which
  Josh Poimboeuf suggested).
- Link to v2: https://lore.kernel.org/r/20241218-objtool-strict-v2-0-a5297c961434@google.com

Changes in v2:
- Renamed flag/config to -Werror/CONFIG_*_WERROR
- Applied to all objool runs instead of just vmlinux.
- Link to v1: https://lore.kernel.org/r/20241213-objtool-strict-v1-0-fd388f9d971f@google.com

---
Brendan Jackman (2):
      objtool: Add --Werror
      kbuild: Add option to fail build on vmlinux objtool issues

 lib/Kconfig.debug                       | 10 ++++++++++
 scripts/Makefile.lib                    |  1 +
 tools/objtool/builtin-check.c           |  6 ++++++
 tools/objtool/check.c                   |  7 ++-----
 tools/objtool/include/objtool/builtin.h |  1 +
 5 files changed, 20 insertions(+), 5 deletions(-)
---
base-commit: 5bc55a333a2f7316b58edc7573e8e893f7acb532
change-id: 20241213-objtool-strict-cb9a0a75139e

Best regards,

Comments

Josh Poimboeuf Jan. 14, 2025, 12:14 a.m. UTC | #1
On Mon, Jan 13, 2025 at 02:05:14PM +0000, Brendan Jackman wrote:
> This adds an option to objtool to exit with an error when it enounters
> warnings.
> 
> Then, it adds a config to enable that flag. This enables you to fail
> the build e.g. when noinstr is violated.
> 
> When that happens, you also get a more verbose log, for example when
> failing noisntr validation it dumps disassembly of the offending code.
> 
> Signed-off-by: Brendan Jackman <jackmanb@google.com>
> ---
> Changes in v3:
> - Added --verbose to objtool args (equivalent to OBJTOOL_VERBOSE=1, which
>   Josh Poimboeuf suggested).
> - Link to v2: https://lore.kernel.org/r/20241218-objtool-strict-v2-0-a5297c961434@google.com

Thanks!  I'm putting it through bot testing now.