On Tue, Apr 08, 2003 at 11:16:22AM -0700, Ahmed A wrote: > 1. If I create my own loadable kernel driver for my > own hardware, and I productize this driver, am I > required to release the source code of the driver. I am not a lawyer. If you are cutting it close with the GPL, you should probably hire your own. That said, the kernel programmers have made an attempt to help your decision. If you use any EXPORT_SYMBOL_GPL() symbols, then your code must be GPL as a derived work. If you use only EXPORT_SYMBOL() symbols, then you at least stand a chance of being counted something other than a derived work of the kernel. Being a copy of source code from another operating system may help here. (Such as nVidia's kernel portions of their driver -- shared source with windows.) Note that arguments about this point (and there _are_ arguments!) often focus on code included in header files, aside from simple data structure definitions. I don't want to explain to a jury the details of header files, inlined code, C preprocessor macros, and how this relates to linking as defined in the GPL. (Hint: "link" is mentioned only outside the terms and conditions.) I don't want to explain to a lawyer, either. :) > 2. What about my own user space apps? Userspace is decoupled from kernel space. Linus put this best in COPYING: NOTE! This copyright does *not* cover user programs that use kernel services by normal system calls - this is merely considered normal use of the kernel, and does *not* fall under the heading of "derived work". Of course, you are expected to comply with the licenses of any libraries you may link against. best of luck. :) -- "Learning curve encryption is much more powerful than eliptical curve encryption." -- Alan Olsen
Attachment:
pgp00364.pgp
Description: PGP signature