Re: x86/fpu: Don't export __kernel_fpu_{begin,end}()
From: Greg Kroah-Hartman
Date: Thu Jan 10 2019 - 08:11:38 EST
On Wed, Jan 09, 2019 at 06:09:35PM +0100, Sebastian Andrzej Siewior wrote:
> On 2019-01-09 17:52:35 [+0100], Greg Kroah-Hartman wrote:
> > If there are no in-kernel users, the symbols should not be exported
> > anymore. That's nothing new, we have always done this.
>
> The thing is that we had
> EXPORT_SYMBOL(__kernel_fpu_begin)
> EXPORT_SYMBOL_GPL(kernel_fpu_begin)
>
> and now __kernel_fpu_begin() is no longer exported and static only.
Ok, that is fine.
> All in kernel user (including the kvm module) use kernel_fpu_begin()
> which is not available to proprietary modules. Hence Marc's mail.
But since when did out-of-tree modules use __kernel_fpu_begin? It's an
x86-only thing, and shouldn't really be used by anyone, right?
> > > On the other hand could we just drop EXPORT_SYMBOL_GPL? I doubt this
> > > helps in any way yet please correct me if I am wrong.
> >
> > Yes, it helps, please leave it as-is.
>
> As you say. I only notice that certain things used to work and then no
> longer do because due to $rework it somehow become EXPORT_SYMBOL_GPL
> only and people complain and we tend to switch the export back to
> EXPORT_SYMBOL.
That is a different topic than the whole _GPL symbol export at all.
Please don't conflate the two.
> I'm not aware of a case where it actually helped in anyway.
The use of the _GPL symbol exports has helped in numerous places over
the years. I'd be glad to discuss details over a beverage sometime :)
thanks,
greg k-h