Re: [PATCH v2 3/8] objtool: stack validation 2.0

From: Josh Poimboeuf
Date: Fri Jun 30 2017 - 09:23:55 EST


On Fri, Jun 30, 2017 at 10:32:03AM +0200, Ingo Molnar wrote:
>
> * Josh Poimboeuf <jpoimboe@xxxxxxxxxx> wrote:
>
> > This is a major rewrite of objtool. Instead of only tracking frame
> > pointer changes, it now tracks all stack-related operations, including
> > all register saves/restores.
> >
> > In addition to making stack validation more robust, this also paves the
> > way for undwarf generation.
> >
> > Signed-off-by: Josh Poimboeuf <jpoimboe@xxxxxxxxxx>
>
> Note, I have applied the first 3 patches, and got a bunch of new warnings on x86
> 64-bit allmodconfig:
>
> arch/x86/kernel/alternative.o: warning: objtool: do_sync_core()+0x1b: unsupported instruction in callable function
> arch/x86/kernel/alternative.o: warning: objtool: text_poke()+0x1a8: unsupported instruction in callable function
> arch/x86/kernel/ftrace.o: warning: objtool: do_sync_core()+0x16: unsupported instruction in callable function
> arch/x86/kernel/cpu/mcheck/mce.o: warning: objtool: machine_check_poll()+0x166: unsupported instruction in callable function
> arch/x86/kernel/cpu/mcheck/mce.o: warning: objtool: do_machine_check()+0x147: unsupported instruction in callable function
>
> (That's the vmlinux build - plus 4 more warnings in the modules build.)
>
> That's with GCC 5.3.1.
>
> Let me know if you need any more info.

Hm, this is odd. I tried with GCC 5.3.0 (which should presumably be
almost identical to 5.3.1) and I don't see any warnings. Can you send
me one of the object files it's complaining about?

--
Josh