2 ms·
Linux has a established rule for module license. In the kernel, functions which might be used by any modules are exported using EXPORT_SYMBOL. But if a module
by nialv7 9y ago
Linux has a established rule for module license.
In the kernel, functions which might be used by any modules are exported using EXPORT_SYMBOL. But if a module wants to use functions exported via EXPORT_SYMBOL_GPL, then the module has to use GPL.
- cyphar 9y agoThe thing is, it's actually not clear whether the intention here might actually harm the GPL. Effectively, programmers aren't lawyers so is marking something as EXPORT_SYMBOL_GPL considered to be a legal restriction? And does that actually imply that EXPORT_SYMBOL is not considered a derived work? The problem is that "derived work" is something that needs to be handled on a case-by-case basis -- if you had a module that scanned the kernel's address space to violate the EXPORT_SYMBOL_GPL restriction, would that module have to be under the GPL (the answer is yes IMO, even though it didn't use any EXPORT_SYMBOL_GPL APIs). This was brought up in a (very long) ML thread on LKML[1]. [1]: https://lists.linuxfoundation.org/pipermail/ksummit-discuss/2016-August/003542.html https://lists.linuxfoundation.org/pipermail/ksummit-discuss/...