> -----Original Message----- > From: Bernd Petrovitsch [mailto:bernd@xxxxxxxxxxxxxxxxxxx] > Sent: Wednesday, November 23, 2011 2:51 AM > To: Sengottuvelan S > Cc: Graeme Russ; Greg KH; Kernel Newbies; Jeff Haran > Subject: RE: GPL-only symbol Error > > On Die, 2011-11-22 at 17:21 -0800, Jeff Haran wrote: > [....] > > Perhaps, but that's not what I asked about. It seems to me the essence > > of GPL is that it grants people the right to modify GPL sources like > > the Linux kernel in any way they want so long as they make those > > changes available to whoever uses the code in the future. I don't see > > You forgot that you also have the hand out the same rights you have to > other people with the (changed) source. > You forgot that all of that also holds for all of your changes, removal > and additions to that code (and lawyers don't care if the changes good, > bad or ugly). Which is what I suggested in the hypothetical scenario I described. The change to the kernel source to change an EXPORT_SYMBOL_GPL() to EXPORT_SYMBOL() would be published. > > anything in it that prohibits specific changes. So if I take a symbol > > that in the sources from kernel.org is declared with > > EXPORT_SYMBOL_GPL(), make a 1 line change that declares it > > EXPORT_SYMBOL() and put that on a publically available web site, how > > have I violated GPL? > > IANAL (and there are pretty much no non-lurking lawyers on LKML), but > you probably didn't violate the GPL as such on the kernel you downloaded > with such a change. But that hasn't anything to do with the legal side - > ask a lawyer if can change the legal "status" with such a change. Just to be clear, I haven't done any of this. This thread originated with somebody else asking why he was getting this build error when he attempted to build his non-GPL module that referenced EXPORT_SYMBOL_GPL() exported symbols. I was attempting to explain to that original poster why he was getting the error. > > Let's say I then ship a product that uses that custom kernel and a > > non-GPL kernel module of my own writing that only works with the > > custom kernel, how is that prohibited in the GPL license? > > That's the actual bug: You assume that you can legally make a > proprietary Linux kernel module by simply declaring to do so (and going > deeper is not quite possible as we do not know the module ....). I can clearly legally write a user space program that results in calls to kernel symbols without publishing it. To do that I load parameters into registers and onto the stack and issue a trap to generate a system call. A kernel module does almost the same thing, except instead of generating a trap, it makes a more traditional function call. The difference is technical and I don't see anything in the COPYING file that makes any reference to this difference. If I have missed that verbiage in the license, please point it out to me. > Than you stumbled on a warning to help you to realize that (and not > hitting such warnings or plain simply removing them doesn't change > anything on the legal side IMHNLO). > And you think you can "fix" the warning by simply removing it (ignoring > the underlying issue). Again, it I didn't stumble on this warning. The original poster did. All I did was respond to a post on a public email list. > But your kernel module is very probably a derived work of the Linux > kernel anyway and thus automatically and implicitly GPL (even if your > whole company may want it, has been told or think otherwise). "very probably a derived work". That is a big assumption. What in the license defines all code that makes calls into kernel symbols via the dynamic module loader mechanism different than code that calls into that code via a trap? > > Not that I am planning on doing this and I've never done it in the > > past, but technically it seems that there would be no violation here. > > Technically, your module is a derived work of the Linux kernel unless > proven otherwise. Again, not my module, not my company's module. I was simply answering a post to this email list and asking questions around a hypothetical scenario. Jeff Haran _______________________________________________ Kernelnewbies mailing list Kernelnewbies@xxxxxxxxxxxxxxxxx http://lists.kernelnewbies.org/mailman/listinfo/kernelnewbies