Questioning EXPORT_SYMBOL_GPL()
Questioning EXPORT_SYMBOL_GPL()
Posted Jun 24, 2014 10:07 UTC (Tue) by dlang (guest, #313)In reply to: Questioning EXPORT_SYMBOL_GPL() by geertj
Parent article: Questioning EXPORT_SYMBOL_GPL()
Posted Jun 24, 2014 11:34 UTC (Tue)
by neilbrown (subscriber, #359)
[Link] (2 responses)
So if there is something novel and creative in the interface which the module needs to use, then the module would be derived. But if the interface uses terminology and formats which are common in the literature, or obvious and purely functional, then it is hardly novel or creative.
Posted Jun 24, 2014 14:06 UTC (Tue)
by roblucid (guest, #48964)
[Link]
It's not the scenario people are thinking of when they assume derivation as a negative to be feared, but something more like the Android scenario, which may distribute GPL code with it's copyrights protected, be a derivative work, yet have other parts protected.
So, it can be argued even if some blob is "derivative", that doesn't mean the code legally should be GPL-ed. The key is whether it is distributing a modification of GPL-ed code, a hard argument to make if no modificaiton is required to load a binary blob no matter what symbol is used, even if it modifies the non-redistributed memory copy of the kernel that is not breaking GPL. Hence the legal justification of shipping of blobs seperately from distro's but making them available for seperate distribution by repo.
Seems to me, the whole EXPORT_SYMBOL_GPL idea is relying on a need to make insufficiently creative modifications to the GPL source, in order to circumvent it, for instance in the "GPL Condom" design pattern.
Posted Jun 29, 2014 5:01 UTC (Sun)
by fergal (guest, #602)
[Link]
A simple photo of a building can be copyrighted, there is no novelty there.
Anyway the question is not what is copyrighted but what makes a derived work.
Posted Jun 24, 2014 12:36 UTC (Tue)
by oshepherd (guest, #90163)
[Link] (5 responses)
Because the Linux implementation of POSIX is Linux specific, any app using POSIX interfaces on Linux is a derivative of Linux?
I think what you intended to say is more along the lines of "As long as the interface is linux specific, anything using that implementation is a derivative of linux"
Yet I could go and re-implement that same interface for, say, FreeBSD. Is the driver still a derivative of Linux, when that same interface exists on another platform? Of course not.
The only real circumstance in which some code could be classified as a derivative of Linux, IMO, is quite simple: When the code is inextricably tied to the internals of Linux. When it dives right into the implementation of Linux, when it is so inextricably tied to Linux that any "compatibility layer" would be a derivative work of Linux.
Saying that a fence interface - of which many can be found in the wild - is in some way a derivative work of Linux is utter tripe and nonsense.
The whole EXPORRT_SYMBOL_GPL thing is really quite silly.
Posted Jun 24, 2014 14:46 UTC (Tue)
by nmav (guest, #34036)
[Link] (4 responses)
Posted Jun 24, 2014 15:43 UTC (Tue)
by sfeam (subscriber, #2841)
[Link]
Posted Jun 29, 2014 22:08 UTC (Sun)
by dvdeug (guest, #10998)
[Link] (2 responses)
Note also that this is not an argument we should be making. GCC has some Windows-specific code, as does many, many other programs. If works written for Linux would be GPL except for that clause, then Windows could declare that GPL code can't legally be written for Windows.
Posted Jun 30, 2014 2:10 UTC (Mon)
by mathstuf (subscriber, #69389)
[Link] (1 responses)
A thought experiment: If a BeOS driver layer were implemented for Linux, would all historical BeOS drivers suddenly become Linux-derived when loaded?
Posted Jul 3, 2014 14:07 UTC (Thu)
by nye (subscriber, #51576)
[Link]
Questioning EXPORT_SYMBOL_GPL()
Questioning EXPORT_SYMBOL_GPL()
Questioning EXPORT_SYMBOL_GPL()
Questioning EXPORT_SYMBOL_GPL()
Questioning EXPORT_SYMBOL_GPL()
That is not "the only reason". It is "one sufficient reason [among others]".
Questioning EXPORT_SYMBOL_GPL()
Questioning EXPORT_SYMBOL_GPL()
Questioning EXPORT_SYMBOL_GPL()
Questioning EXPORT_SYMBOL_GPL()
