(About GPLv3) Can the Linux Kernel Relicense?

While discussing GPLv3, some people have suggested that even when version 3 of the GPL is released, the Linux kernel developers will not have the option of using it due to copyright reasons.

This is incorrect, but it is based on a real problem: The Linux kernel has no structures in place to facilitate relicensing.

Moving to an incompatible licence requires that current code is relicenced with permission from the copyright holders, or is removed.

FSF foresaw this problem in the 80s, and it was obvious that the licence would have to be updated at some time, and so they implemented two fixes. One fix was specifically for the GNU project – they requested the contributors assign the copyright to FSF so that relicensing (as well as enforcement) can be done by FSF.

The second is that they recommended that people using the GNU GPL should licence their software under a specific version plus "any later version". If people do this, their software will be compatible with GPLv3, v4, v5, etc., so this issue will not exist.

Almost every GPL-using free software project did this. The Linux kernel is the only large exception. With hundreds or thousands of authors, and each being a copyright holder, it will be difficult to contact them all.

Why is GPLv2 incompatible with v3? GPL version 2 says that any modified versions of the software must also be distributed under GPL version 2. GPL version 3 will say that any modified versions of software it covers, must be distributed under GPL version 3. So if someone merges some version 2 software with some version 3 software, there will be no legal way to distribute the combination. It has always been known that version 3 would be incompatible with version 2.

For Linux, getting into a position where they can use another licence will take time and/or effort, but this is something they should do anyway. If an absurd interpretation of GPLv2 is accepted by a court in your country tomorrow, what will Linux do? And what if this absurd interpretation is accepted in more countries? Or what if the licence is declared invalid by a court? (that last situation is very unlikely, but it’s just an example for discussion.)

This is a reason why free software projects should maintain their copyrights in a way that will allow them to update their licence when the want or need arises.

To get into the position to move to a GPLv3, the Linux developers could adopt the "or any later version" policy from now on, get relicensing permission from as many copyright holders as possible, and then get back to programming. Over time, the (hopefully small amount of) non-relicensed code will be replaced by new code (without the license problem), and eventually the entire code base will be ok to relicense.

So I’m saying they can move to v3 if they want. Whether they actually do, also depends on whether they want to. That discussion will be more productive after GPLv3 is released (the current published texts are just discussion drafts). Right now, the important thing is for people to go to the current draft and comment on the text, to help make the best licence possible.

FWIW, here are the five comments I’ve made on draft 2. (Scroll down looking for pieces of text highlighted in light yellow – in sections 0, 2, 7b0, 7b2, and 11.)

UPDATE 2007-02-04: Someone who works with many lawyers on free software copyright issues later told me that it is not necessary to get permission from 100% of the copyright holders. It would suffice if there was permission from the copyright holders of 95% of the source code and no objections from the holders of the other 5%. This, I’m told, is how Mozilla was able to relicense to the GPL in 2003 despite years of community contributions.