Re: [PATCH] objtool: Fix UNWIND_HINT_{SAVE,RESTORE} across basic blocks

From: Kees Cook
Date: Fri Mar 01 2024 - 01:33:20 EST


On Mon, Feb 26, 2024 at 11:35:27PM -0800, Josh Poimboeuf wrote:
> On Fri, Feb 23, 2024 at 04:45:22PM -0800, Kees Cook wrote:
> > Josh, Peter, can you give a clue about what's happened here? For
> > added context, the referenced commit is changing a noreturn function
> > prototype[1], which I know gets some special objtool handling, but it's
> > converting a pointer arg to a u8... I can't imagine what has gone weird
> > here. :P
>
> I think this convinced GCC to reshuffle some basic blocks, which
> uncovered an objtool bug. Or, objtool just wasn't smart enough, as the
> warning says ;-)
>
> This should fix it, absent any more warnings. Kees, feel free to take
> it in your branch if that helps.

Thanks very much! I'll carry it in my tree.

-Kees

--
Kees Cook