Re: [PATCH] [RFC] x86: avoid -mtune=atom for objtool warnings

From: Arnd Bergmann
Date: Tue Oct 11 2016 - 09:41:01 EST


On Tuesday, October 11, 2016 7:20:49 AM CEST Josh Poimboeuf wrote:
> On Tue, Oct 11, 2016 at 10:08:12AM +0200, Arnd Bergmann wrote:
> > On Monday, October 10, 2016 3:23:22 PM CEST Josh Poimboeuf wrote:
> > >
> > > Thanks for reporting it. It looks like 'mtune=atom' sometimes makes a
> > > slight change to one of the stack frame setup instructions. Instead of:
> > >
> > > move rsp, rbp
> > >
> > > It sometimes does:
> > >
> > > lea (%rsp),%rbp
> > >
> > > They're two different instructions, but they have the same result. It's
> > > an easy fix for objtool. I'll post a patch soon.
> > >
> > >
> >
> > Ah, good to hear. I've replaced my patch with yours in my randconfig
> > tests now and will let you know if there are any other warnings on
> > atom. I've done a few thousand x86 randconfig builds now and done private
> > patches for all warnings I got (I previously had fixes only for the arm
> > warnings). I found objtool warnings for a few files in some configurations
> > that do not involve -mtune=atom, maybe you can also look at what
> > is going on there as I have no idea for how to address them:
> >
> > drivers/scsi/fnic/fnic_main.o: warning: objtool: fnic_log_q_error() falls through to next function fnic_handle_link_event()
> > drivers/scsi/snic/snic_res.o: warning: objtool: .text: unexpected end of section
> > drivers/infiniband/sw/rxe/rxe_comp.o: warning: objtool: rxe_completer()+0x2f3: sibling call from callable instruction with changed frame pointer
> > drivers/infiniband/sw/rxe/rxe_resp.o: warning: objtool: rxe_responder()+0x10f: sibling call from callable instruction with changed frame pointer
> > kernel/locking/rwsem.o: warning: objtool: down_write_killable()+0x16: call without frame pointer save/setup
> >
> > I can provide additional information for reproducing them if it's
> > not immediately obvious what the problems are.
>
> I'm really surprised the 0-day bot didn't find these. I was under the
> impression that it continuously did a bunch of randconfigs.
>
> Anyway, if you could send the configs for the warnings, that would be
> very helpful.
>
> I also happen to be working on a significant rewrite of objtool and
> these configs will come in handy for making a regression suite.

I've attached the three .config files here, but due to the size I
don't know if they make it to the list or your inbox. Let me
know if you get them, and if you are able to reproduce the problem.

The compiler version I used is gcc-6 (Ubuntu 6.2.0-3ubuntu11~16.04)
6.2.0 20160901, and this is on top of linux-next plus a few other
patches.

Arnd

Attachment: 0x3A1DA440-config.zip
Description: Zip archive

Attachment: 0x364C8CDB-config.zip
Description: Zip archive

Attachment: 0xFC244C03-config.zip
Description: Zip archive