I'm writing a userspace driver which requires some modifications to the Linux kernel to function. The modifications expose new functionality by the sysfs
interface. I understand that the modifications to the Linux kernel have to be licensed under the GPLv2, but is the userspace software (which relies on the modified kernel to function) considered a derivative work of the kernel?
1 Answer
Your kernel modifications pretty clearly create a derived work of the kernel, so they will almost certainly need to be distributed under GPLv2. In addition, deciding to do so helps the analysis in the next paragraph enormously.
As for your userspace software, it is certain that proprietary software, public domain software, and other non-GPL'ed software makes use of the regular kernel all the time without being covered by the kernel's licence. Since that is true for a GPL'ed, stock kernel, it will also be true for your modified, GPL'ed kernel, because it is the same licence that covers both works. I believe that your userspace software can be distributed under any licence you choose.
-
+1; To put it another way: if your modified kernel became the mainline kernel (because Linus decided to pull your changes in), the project's decision to include your changes (or not) doesn't alter your legal rights or responsibilities in any way. Thus, using your own modified kernel is the same as using the mainline kernel. As stated here, there is a strong longstanding precedent that kernel licensing does not impact userspace licensing.– apsillers ♦Commented Jul 14, 2016 at 15:20
-
Yes, I think that's another way of looking at it. Hopefully it is a better way, at least for some!– MadHatter ♦Commented Jul 14, 2016 at 15:36
-
Your answer generally makes sense BUT if the kernel changes in questions are significant enough it could be that the user space code could be impacted too. Creating "non-standard" interfaces to the kernel could be such a grey area. Commented Jul 18, 2016 at 5:18
-
@PhilippeOmbredanne I tend to side with apsillers point above that there is a strong, longstanding precedent that kernel licensing does not [bleed] into userspace, and that the GNU GPL's obligations are met by sharing your kernel code, and thus your non-standard interfaces, with everyone. Could you provide a counter-example, where other changes-of-sufficient-significance have engaged such a bleed, and required userspace-only code also to be GPLed?– MadHatter ♦Commented Jul 18, 2016 at 6:20
-
For an unmodified kernel, licensing "does not bleed" into userspace as you put it. But some mods could bleed in userspace. For instance, say you create a simple hook module that would expose network packets in userspace and allow to do packet filtering in userspace when you would have to do it using kernel space code otherwise. Several lawyers I have consulted with would consider that userspace code using this newly added funky kernel facility would have to be licensed under the same terms of the kernel proper. Commented Jul 19, 2016 at 15:23
sysfs
?