The Linux kernel is licenced under the GPLv2. There are several notable things about this:
-
The licence is specifically GPLv2 and not “GPLv2 or later”, which is the default
when applying the GPLv2 to software. -
Linus Torvalds seems to speak as though he has the power to interpret the
GPL. He does not; nor does the FSF. -
Supposedly, the requirements of the GPLv2 do not apply to the userspace ABI.
-
Conversely, the Linux kernel project claims that the GPLv2 conditions do apply
to the kernel-mode ABI. The legal theory behind this is that by linking to
the kernel, you create a derived work of it. This argument is somewhat strengthened
by the project’s refusal to create a stable kernel-mode ABI, meaning that the
ABI is constantly changing, requiring modules to be built against a precise
version.Nonetheless, there is nothing preventing someone from, with sufficient effort,
producing cleanroom documentation of the ABI and targeting it, thereby creating
compatible modules without creating a derived work. -
The situation gets more bizarre with the introduction of “
GPL_ONLY
” symbols.
The idea is that binary modules are allowed, but only if they target only
“GPL_ONLY
” symbols. This makes no sense, because the GPLv2 does not enable
any such distinction; either something is a derived work, in which case the
GPLv2 applies, or it is not. Again, the implication here seems to be that
the Linux kernel project has the power to interpret and selectively
disapply provisions of the GPLv2. This is not the case. Doing so would
require the authorization of all kernel copyright holders (i.e. all
contributors). -
If modules are derived works, then every non-GPL non-cleanroomed module is
violating the GPLv2. This creates a ticking time bomb for companies which
rely on this ability, because they could get sued by any contributor at any
time. -
If modules are not derived works, the “
GPL_ONLY
” provision is meaningless
and unenforceable. -
The userspace ABI is stable and intended not to cause anything targeting
it to become a derived work. But once again, this seems t