Re: [PATCH] objtool: Don't fail the kernel build on fatal errors

From: Nick Desaulniers
Date: Fri Jan 15 2021 - 13:45:56 EST


On Thu, Jan 14, 2021 at 2:46 PM Josh Poimboeuf <jpoimboe@xxxxxxxxxx> wrote:
>
> This is basically a revert of commit 644592d32837 ("objtool: Fail the
> kernel build on fatal errors").
>
> That change turned out to be more trouble than it's worth. Failing the
> build is an extreme measure which sometimes gets too much attention and
> blocks CI build testing.
>
> These fatal-type warnings aren't yet as rare as we'd hope, due to the
> ever-increasing matrix of supported toolchains/plugins and their
> fast-changing nature as of late.
>
> Also, there are more people (and bots) looking for objtool warnings than
> ever before, so such warnings not likely to be ignored for long.
>
> Suggested-by: Nick Desaulniers <ndesaulniers@xxxxxxxxxx>
> Signed-off-by: Josh Poimboeuf <jpoimboe@xxxxxxxxxx>

Thank you; I feel the arguments against enabling -Werror for the
kernel apply here. The warnings are annoying enough that we plan to
follow up on them all.
Reviewed-by: Nick Desaulniers <ndesaulniers@xxxxxxxxxx>

> ---
> tools/objtool/check.c | 14 +++++---------
> 1 file changed, 5 insertions(+), 9 deletions(-)
>
> diff --git a/tools/objtool/check.c b/tools/objtool/check.c
> index 5f8d3eed78a1..4bd30315eb62 100644
> --- a/tools/objtool/check.c
> +++ b/tools/objtool/check.c
> @@ -2928,14 +2928,10 @@ int check(struct objtool_file *file)
> warnings += ret;
>
> out:
> - if (ret < 0) {
> - /*
> - * Fatal error. The binary is corrupt or otherwise broken in
> - * some way, or objtool itself is broken. Fail the kernel
> - * build.
> - */
> - return ret;
> - }
> -
> + /*
> + * For now, don't fail the kernel build on fatal warnings. These
> + * errors are still fairly common due to the growing matrix of
> + * supported toolchains and their recent pace of change.
> + */
> return 0;
> }
> --
> 2.29.2
>


--
Thanks,
~Nick Desaulniers