Re: Linux in a binary world... a doomsday scenario

Alan Cox
2005-12-06T20:00:10Z

On Maw, 2005-12-06 at 15:25 +0000, David Woodhouse wrote:
> But yes -- its existence is indeed a 'sort of proof' that non-GPL
> modules are at least _considered_ to be OK in some situations. I wish
> we'd never invented EXPORT_SYMBOL_GPL() in the first place -- it appears
> to legitimise something which was never really OK in the first place,
> and weakens our position when we take it to court.

<Legalese see below for interesting content>

On the contrary. I can demonstrate I've repeatedly stated that I
consider almost all modules invalid, that I contributed code before
Linus ever made any comments about non-GPL modules and that he
incorporated code from bodies strongly of that view who granted no non
GPL usage without asking them for any exception (notably from the FSF)
(and Linus is added to this for legal reasons alone)

</End of legalese>

I think however you also have to work *with* rather than against a lot
of the vendors who are trying to manage awkward problems (even if
generally of their own historical making). There are plenty of people
who do need a good kicking and ship binary only Linux systems that need
dealing with well before you want to worry about the less clear cases.

People like Nvidia who have made business decisions based on the
licensing problems they face and looked at the question aren't the folks
to go chasing with large hammers even if its annoying. Start with the
folks who really genuinely don't care. A look at gpl-violations.org will
show the scale of that problem.

Some of the other suggestions people have made don't work either. The
limit of power in a copyright license is constrained by law. The
drafters of copyright laws chose for good and sound reasons to say that
you can't use copyright agreements to interfere with non-derivative
works. They did this for a lot of good reasons.

EXPORT_SYMBOL_GPL also started with an intent to indicate internal
interfaces (ie those that are clearly derivative). If you want to split
the technology come legal issues and the politics rename it to
EXPORT_SYMBOL_INTERNAL. The only case for _GPL then would be to
specifically mark code that implements or derives from a work
implementing GPL patent licensed code. In those cases the derivative
work question is irrelevant as patents are not bounded in the same way.

That keeps the intent clear "this is an internal symbol", doesn't really
change the effect of any legal derivate works decision that I can see
(and its hard to see as caselaw for such cases is quite limited).

The enforcement side is also worth keeping because while we don't have
caselaw on the "lying about being GPL" case we do have some good
evidence in ongoing situations that corporate lawyers are very concerned
to discover they are shipping a lying module. Sorry no details on the
case in question can be public atm.

As to moving a function from _GPL, as I understand the legal situation
its up to the copyright holders to make a licensing change _if_ it is
one. If it isn't then it doesn't matter. If it is well Linus is probably
now personally liable (or OSDL) instead of Nvidia, his problem, his
choice. Is the new insert_page internal, that in itself isn't clear

Alan