Re: [PATCH] ARM: don't export unused return_address()

From: Russell King - ARM Linux admin
Date: Wed Nov 20 2019 - 05:07:43 EST


On Wed, Nov 20, 2019 at 09:51:11AM +0000, Russell King - ARM Linux admin wrote:
> On Wed, Nov 20, 2019 at 06:42:52PM +0900, Masahiro Yamada wrote:
> > Hi Russell,
> >
> >
> > On Wed, Nov 20, 2019 at 6:07 PM Russell King - ARM Linux admin
> > <linux@xxxxxxxxxxxxxxx> wrote:
> > >
> > > On Wed, Nov 20, 2019 at 06:02:13PM +0900, Masahiro Yamada wrote:
> > > > Hi Arnd,
> > > >
> > > >
> > > >
> > > > On Thu, Nov 14, 2019 at 2:01 AM Russell King - ARM Linux admin
> > > > <linux@xxxxxxxxxxxxxxx> wrote:
> > > > >
> > > > > On Wed, Nov 13, 2019 at 02:15:00PM +0100, Geert Uytterhoeven wrote:
> > > > > > Hi Russell,
> > > > > >
> > > > > > On Wed, Nov 13, 2019 at 12:45 PM Russell King - ARM Linux admin
> > > > > > <linux@xxxxxxxxxxxxxxx> wrote:
> > > > > > > On Wed, Nov 13, 2019 at 08:40:39PM +0900, Masahiro Yamada wrote:
> > > > > > > > On Tue, Oct 1, 2019 at 11:31 PM Geert Uytterhoeven <geert@xxxxxxxxxxxxxx> wrote:
> > > > > > > > > On Fri, Sep 6, 2019 at 5:47 PM Arnd Bergmann <arnd@xxxxxxxx> wrote:
> > > > > > > > > > Without the frame pointer enabled, return_address() is an inline
> > > > > > > > > > function and does not need to be exported, as shown by this warning:
> > > > > > > > > >
> > > > > > > > > > WARNING: "return_address" [vmlinux] is a static EXPORT_SYMBOL_GPL
> > > > > > > > > >
> > > > > > > > > > Move the EXPORT_SYMBOL_GPL() into the #ifdef as well.
> > > > > > > > > >
> > > > > > > > > > Signed-off-by: Arnd Bergmann <arnd@xxxxxxxx>
> > > > > > > > >
> > > > > > > > > Thanks for your patch!
> > > > > > > > >
> > > > > > > > > Tested-by: Geert Uytterhoeven <geert+renesas@xxxxxxxxx>
> > > > > > > > >
> > > > > > > > > > --- a/arch/arm/kernel/return_address.c
> > > > > > > > > > +++ b/arch/arm/kernel/return_address.c
> > > > > > > > > > @@ -53,6 +53,7 @@ void *return_address(unsigned int level)
> > > > > > > > > > return NULL;
> > > > > > > > > > }
> > > > > > > > > >
> > > > > > > > >
> > > > > > > > > Checkpatch doesn't like the empty line above:
> > > > > > > > >
> > > > > > > > > WARNING: EXPORT_SYMBOL(foo); should immediately follow its function/variable
> > > > > > > > >
> > > > > > > > > > +EXPORT_SYMBOL_GPL(return_address);
> > > > > > > > > > +
> > > > > > > > > > #endif /* if defined(CONFIG_FRAME_POINTER) && !defined(CONFIG_ARM_UNWIND) */
> > > > > > > > > >
> > > > > > > > > > -EXPORT_SYMBOL_GPL(return_address);
> > > > > >
> > > > > > > > What has happened to this patch?
> > > > > > > >
> > > > > > > > I still see this warning.
> > > > > > >
> > > > > > > Simple - it got merged, it caused build regressions, it got dropped.
> > > > > > > A new version is pending me doing another round of patch merging.
> > > > > >
> > > > > > I believe that was not Arnd's patch, but Ben Dooks' alternative solution[*]?
> > > > >
> > > > > I don't keep track of who did what, sorry.
> > > >
> > > >
> > > > Arnd,
> > > >
> > > > I believe this patch is the correct fix.
> > > > Could you please put it into Russell's patch tracker?
> > > > (patches@xxxxxxxxxxxxxxxx)
> > >
> > > Is there something wrong with:
> > >
> > > fb033c95c94c ARM: 8918/2: only build return_address() if needed
> > >
> > > I haven't seen any build issues with that.
> >
> >
> > Sorry, I had not checked Ben's patch because you said
> > "Simple - it got merged, it caused build regressions, it got dropped."
>
> That was 8918/1. Ben fixed his patch, and submitted an updated
> version.
>
> > Yup, I've checked it right now,
> > and it looks good to me.
> >
> > But, I do not see that commit in the latest linux-next
> > (next-20191120).
> >
> > Could you really apply it if you have not.
>
> It was applied last Friday and was pushed out there and then.
>
> $ git ls-remote zeniv | grep for-next
> 022eb8ae8b5ee8c5c813923c69b5ebb1e9612c4c refs/heads/for-next
> $ git lg for-next
> 022eb8ae8b5e ARM: 8938/1: kernel: initialize broadcast hrtimer based
> clock event device
> ...
> fb033c95c94c ARM: 8918/2: only build return_address() if needed
>
> I've no idea why linux-next doesn't have it.

Okay, apparently linux-next _does_ have it:

https://git.kernel.org/pub/scm/linux/kernel/git/next/linux-next.git/log/arch/arm/kernel/Makefile

so I think you're confused.

--
RMK's Patch system: https://www.armlinux.org.uk/developer/patches/
FTTC broadband for 0.8mile line in suburbia: sync at 12.1Mbps down 622kbps up
According to speedtest.net: 11.9Mbps down 500kbps up