Re: [PATCH] USB: mark USB drivers as being GPL only

Pekka Enberg
2008-02-03T15:43:35Z

Hi David,

On Feb 3, 2008 5:12 PM, David Newall <davidn@davidnewall.com> wrote:
> By the way, I'm almost certain that the COPYING file is the first, last
> and only document specifying licence conditions, and nothing in that
> prevents a proprietary driver from including a patch that, for example,
> globally replaces ALL GPL-only symbols by the less restrictive ones.

So I am going to assume you're not trolling here (although some of
your snarky remarks make that bit hard).

A vendor is, of course, allowed to distribute a patch (under the GPLv2
proper) that removes the license checks no doubt‚ but it doesn't
change the fact whether the actual driver they're distributing (under
a proprietary license) is derived work or not (one way or another).
And, _if_ you're distributing a derived work that is not under the
GPLv2, you're breaking the law. I think we can agree on this?

As there is some controversy over the definition of derived work
(think Linus' comments on porting a driver or a filesystem from
another operating system here), we use the EXPORT_SYMBOL_GPL
annotations as a big warning sign that what you're doing is likely to
be considered as a derived work. If the USB developers want to
annotate their code with EXPORT_SYMBOL_GPL, why the hell do you want
to argue about it? They know the code better than you and as copyright
holders they can actually sue those parties distributing proprietary
code they think is derived work.

Bringing up Linux world domination or Microsoft market share in these
kind of discussion is totally pointless. The license is what it is
(GPLv2) and it seems unlikely to change at this point. If you want to
develop for Linux, you're most certainly better off always
distributing your code under the GPLv2; otherwise you really really
want to consult an IP lawyer to be sure. But what I don't understand
is why people insist using the Linux kernel for something it clearly
can never really properly support (proprietary code)?