@viro, you appear to be saying that a kernel module will need MORE definitions than the "subset of [them] that covers syscall-related constants and structs".
1) If that is so, does this mean you consider constants and structs potentially copyrightable?
2.1) If the answer to 1) is yes, please consider that Bionic contains approximately 750 files containing a total of approximately 2.5 megabytes of constants and structs (plus other material, but the bulk of it is constants and structs). At the start of each such file, Google claims that this is "no copyrightable material" and threw out any copyright and GPL notices found in the raw headers.
2.2) If the answer to 2) is no, of if you wish to add something anyway, please specify what your derivative work theory for a loadable kernel module would be.
Posted Mar 21, 2011 12:04 UTC (Mon) by dgm (subscriber, #49227)
[Link]
It amuses me that you find very important for the argument that Alexander Viro considers that something is copyrightable or not. Instead you chose to obviate something that's much more interesting: his intention. Were he and the rest of kernel developers trying to prevent others from using those constants and structures in non-GPL code? I cannot speak for them, but my guess is that they were not.
Additionally, it's clear that, even in the case constants and structs were copyrightable, there's the special exception about the syscall interface. There's no such exception for kernel modules.
Proprietary loadable kernel modules
Posted Mar 23, 2011 23:28 UTC (Wed) by baldridgeec (guest, #55283)
[Link]
I should probably keep my mouth shut, not being a kernel developer, but I have always understood a (non-GPL) loadable kernel module's ability to link to code as being governed by the "#define GPL" sections.
This obviously DOES NOT mean that they cannot have include files which also have text defining the GPLed interfaces (indeed, AFAIK most if not all proprietary LKMs simply #include the kernel's own header files.) It is the use of those interfaces in the code which determines the behavior of cc and ld, and determines whether the module is considered a derivative work for the purpose of license compliance.
That being said, I'm not sure why the question of LKM licensing is coming up anyway, since Bionic is a reimplementation of libc, not a module.
Proprietary loadable kernel modules
Posted Mar 24, 2011 13:07 UTC (Thu) by vonbrand (subscriber, #4458)
[Link]
That is the intent of the kernel hackers; whether the law agrees with this is quite another thing...
Proprietary loadable kernel modules
Posted Mar 24, 2011 14:04 UTC (Thu) by etienne (subscriber, #25256)
[Link]
The intent of the kernel hackers is a bit like the intent of GCC developers when they say that the resulting executable is not a derived work of GCC, or the intent of word processors developers when they say the final document is fully owned by the author of said document.
If the law disagree that may have very high consequences.
Proprietary loadable kernel modules
Posted Mar 24, 2011 19:53 UTC (Thu) by vonbrand (subscriber, #4458)
[Link]
OK, perhaps I misspoke. What I meant is that the kernel gang considers stuff using userland interfaces OK under whatever licence you fancy (not in the sense that such code is "not derivative", but that that such use is allowed), while using kernel-internal interfaces (specially ones marked GPL-only) is strictly GPL. It might be that the law says that both uses create derivatives, in which case you are being given an explicit permission for userland while in-kernel use is strictly GPL-only because it is a derivative; or it might say neither does, in which case the whole discussion is moot.
Proprietary loadable kernel modules
Posted Mar 25, 2011 0:42 UTC (Fri) by rgmoore (✭ supporter ✭, #75)
[Link]
The stated intent of the kernel hackers (or anyone in a similar position) has a great deal of effect when they say that something is permitted. If Linus says "you're in the clear as long as you don't use anything within #define GPL", then he can be legally barred from turning around and suing somebody when they take him seriously. Even without a formal statement along those lines, officially designating some symbols as GPL only implies that the rest of the symbols may be used by non-GPL modules.