Re: [tip:core/urgent] objtool: Fix __unreachable section relocation size

From: Ingo Molnar
Date: Wed Mar 01 2017 - 05:38:32 EST



* tip-bot for Josh Poimboeuf <tipbot@xxxxxxxxx> wrote:

> Commit-ID: 90a7e63a31b8f7d630d12ef0d8d37d3ab87f76e5
> Gitweb: http://git.kernel.org/tip/90a7e63a31b8f7d630d12ef0d8d37d3ab87f76e5
> Author: Josh Poimboeuf <jpoimboe@xxxxxxxxxx>
> AuthorDate: Wed, 1 Mar 2017 00:05:04 -0600
> Committer: Ingo Molnar <mingo@xxxxxxxxxx>
> CommitDate: Wed, 1 Mar 2017 07:38:25 +0100
>
> objtool: Fix __unreachable section relocation size
>
> Linus reported the following commit broke module loading on his laptop:
>
> d1091c7fa3d5 ("objtool: Improve detection of BUG() and other dead ends")
>
> It showed errors like the following:
>
> module: overflow in relocation type 10 val ffffffffc02afc81
> module: 'nvme' likely not compiled with -mcmodel=kernel

BTW., beyond inadequate testing, another mistake I failed to notice during review
is that the title of the patch was actively misleading: an "objtool: " prefix
suggests a change that only affects objtool, while the changes here were to
compiler-gcc.h, affecting pretty much everyone...

So a better, more informative commit title would have been:

objtool, compiler.h: Improve detection of BUG() and other dead ends

... to at least warn people about the wider impact. (To be honest I personally
probably would still not have noticed the bug, but maybe others.)

Along the same lines I'll fix the title of this fix patch as well, once a final
version has been reached.

Thanks,

Ingo