Re: [PATCH] lz4: make LZ4HC_setExternalDict as non-static

From: Masahiro Yamada
Date: Fri Sep 06 2019 - 22:15:41 EST


On Sat, Sep 7, 2019 at 3:43 AM Arnd Bergmann <arnd@xxxxxxxx> wrote:
>
> On Fri, Sep 6, 2019 at 6:21 PM Denis Efremov <efremov@xxxxxxxxx> wrote:
> >
> > Hi,
> >
> > > kbuild warns for exported static symbols. This one seems to
> > > be meant as an external API but does not have any in-kernel
> > > users:
> > >
> > > WARNING: "LZ4HC_setExternalDict" [vmlinux] is a static EXPORT_SYMBOL
> > >
> > > I suppose the function should not just get removed since it would
> > > be nice to stay close to the upstream version of lz4hc, so just
> > > make it global.

When you make the symbol global, you need to
provide a prototype declaration in a global header.
(include/linux/lz4.h in this case)

Otherwise, nobody cannot call this function anyway.

I prefer Denis's fix-up.




> > I'm not sure what is better here. But just in case, I sent a different
> > patch that removes EXPORT_SYMBOL from this function some time ago:
> > https://lkml.org/lkml/2019/7/8/842
> >
> > I checked first that this functions is indeed static in the original lib[1]
> > and this symbol is not used in kernel.
> >
> > [1] https://github.com/lz4/lz4/blob/dev/lib/lz4hc.c#L1054
>
> Ah, good. Your patch is the better fix then.
>
> Arnd



--
Best Regards
Masahiro Yamada