Messages in this thread | | | Date | Fri, 3 Aug 2012 14:19:59 -0400 | From | Theodore Ts'o <> | Subject | Re: MODULE_LICENSE("GPL")?? |
| |
On Fri, Aug 03, 2012 at 10:10:54AM -0400, Mark Hounschell wrote: > On 08/03/2012 09:29 AM, Alan Cox wrote: > >>assumption that that actually meant they were NOT using GPL symbols. > > > >All symbols in the Linux kernel are to GPL code and all linking dynamic > >or otherwise is subject to the GPL licence. That is you need to be able > >to show anything non-free linked with it such as a kernel module is not a > >derivative work. > > Why then is there EXPORT_SYMBOL_GPL and EXPORT_SYMBOL? As long as > you have them both, one can and will, assume that what you say above > is not the intent.
The question of whether or not a program or driver which dynamically links with GPL'ed code becomes a derivitive work of the GPL'ed code is a complex one. This is especially true if you use GPL'ed header files that include inline functions or complex CPP macros. Whether or not this is actually the case may very well depend on your local legal jourisdiction, and it's ultimately something where no one on this list can give you legal advice.
If the drivers are distributed under the GPL, then it's obviously safe. If they distributed under some other license, you will need to consult with your lawyers.
> Again, our Linux kernel drivers are and always were GPL and at least > partly so because of EXPORT_SYMBOL_GPL.
Well, that's obviously something that we would all prefer, since avoiding needing to talk to lawyers is always a Good Thing (tm). <grin>
One of the more important reasons is that this removes one of the key barriers towards getting the driver included in the kernel sources, which can be a huge advantage from a code maintenance point of view, and given that more embedded Linux device manufacturers are more conscious of their obligations under the GPL, it can be an advantage during the RFP/hardware selection process.
- Ted
| |