Re: Kernel modul licensing issues
From: Manfred Spraul
Date: Sun Nov 30 2003 - 08:25:24 EST
John wrote:
I have some licensing issues with the linux GPL and the implications
on a project which incorporates partial non-GPL code which I want
to release as linux kernel module.
Wrong mailing list.
You must find a lawyer, and he'll answer your questions.
I have implemented a proprietary algorithm in user space which I'm not
allowed to release under the GPL. From a _technical_ point of view I
could compile the code as kernel module which offers a certain API.
Note that the kernel module would have only very limited dependency
on the kernel, i.e. apart from memory allocation functions (kmalloc,
kfree, vmalloc, vfree) and potentially some "locks" (spinlock, big
reader lock or rcu) the code is totally independent from the kernel.
RCU is a patented algorithm - mention that to your lawyer. Your creation
must not be derived from the kernel (because creating derived works is
an exclusive right of the copyright owner, and you don't have and won't
get a permission), and it must not infringe the RCU patents.
As far as the interaction with the algorithm API is concerned the
frontend submits kernel data structures to the algorithm module _but_
since the algorithm has no declaration of kernel structures it does
neither use nor modify the kernel data. It's just stored and returned
to the user via certain API functions.
You have written an algorithm module that is tightly coupled to the
Linux kernel, and you think it's not derived from the kernel, correct?
As a non-lawyer, it'd say that's wrong.
"Derived work" is a legal term, your lawyer might be able to figure out
if your combination is a derived work.
The drivers that are more or less accepted as not-derived run on
multiple operating systems - e.g. the nvidia ethernet driver uses the
same source code for Windows and Linux, and nvlib.o works on Linux and
FreeBSD.
--
Manfred
P.S.: You might need a team of lawyers: the definition of derived work
differs from country to country.
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@xxxxxxxxxxxxxxx
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/