[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: Bug#239952: kernel-source-2.6.4: qla2xxx contains non-free fi rmware



Matthew Garrett wrote:

Humberto Massa wrote:

?! That's the part I have difficulty understanding. As I have
said here before, there is no mistake in things unsaid... the
code is there, the copyright in in the top of the file, the
license is there *saying* to you it's GPL licensed, the origin of
the blob is nowhere in sight. _The only possible conclusion_ is
that it's the pf4m (=preferred form for modification). If asked
and not responded, _the only possible conclusion_ is that it's
the pf4m. It's only the opposite if the copyright holder (Qlogic,
IBM, whoever) says "no, we have a XX assembly file around here,
but we won't show you." /Then/ it's undistributable. Until then,
if it's in a file, with valid copyright assignment and license,
we _must_ assume it's the pf4m IMHO.


The copyright holder is perfectly free to put a GPL header on code
that can't be distributed under the terms of the GPL, and can then
give that code to somebody else.
Look down below for the net result of this.


But more seriously, if I included a bunch of x86 binary code in a C
 source file with a GPL header, would you automatically assume that
that was the preferred form of modification? Even if there was 300K
of it? Companies like Intel do not operate in a way that would
allow them to produce a piece of code that could only be maintained
by one person. Suggesting that the firmware was written by one
person with an intimate knowledge of the hardware and that if he
was hit by a bus Intel would have to start over is, frankly,
implausible.


Ok, I confess... I was forcing my hand (partially) :-)

Serious, Intel and IBM, I concur with you (ain't gonna happen), /but/ other hw manufacturers, I don't know... and... neither do you.

The net result of tacking a GPL-license-header in a doubious source file (as in we don't know and prefer to believe is not a source file or a pf4m of the file) is, for example:

* Massa (me) gets a file (C) IBM, with a big (20k?) blob in {0x0...} format, and little more, and a GPL-license-header. * hmmm... this means I am licensed (and entitled, as in now I have the right) to do the things the GPL licenses me to do. So I can redistribute it. * yes (at least in /my/ jurisdiction -- not in the sense I own it, but in the sense I am /inside/ it)... They put the GPL-header there, they are saying: "read this, you have this rights where this rights is the _reasonable_ and _possible_ interpretation of this" * ok, at this point I don't want to mess with it, just redistribute. I am in the safe side of the law assuming the GPL header applies to everything in there *and* assuming the blob in 0x0 format is the pf4m, because, as far as I know, it's the only form for modification (so it must be the preferred one) * if I have doubts, I will ask IBM, I send a mail to person_x@ibm.com and ask "is this really, really GPL? is this the pf4m?". * a month and a year passes, nobody answers. what do I know? it's the pf4m. period. the genius guys at IBM know how to use and change it in hex. nothing else. * I can assume differently _if and only if_ person_x@ibm.com sends me a mail "sorry, here is the EULA for the blob: you cannot modify, see, peek on it with a ten-foot pole". * In this last case, it's non-free. Else, it's still free. Sucks, but it's free. * I will give another example. So IBM sez: it's GPL, ok, here is the source code:

mov x3, 42
jmp 34
flags 39
mov x2, x3
wait 3
repeat move inc x1, x3
halt

* ooh, nice. wtf? suppose, even, the asm code below is correlated to the hex codes. Is it more free? * If I dont' know what the registers are for, what regions of memory do what, does it make *any* difference at all? Is it any more of "Preferred Form 4 Modification"??? * IBM can say: o, yes, for thirty million dollars, cash, we can sell you the complete specs to the gadget.

What now?

--
br,M



Reply to: