Torvalds vs Schwartz GPL Wars
javipas writes "The controversial message published by Linus Torvalds (mirrored) in the Linux Kernel Mailing List was from the beginning to the end an open attack to Sun and its Open Source strategy. Linus criticized Sun's real position on GPL, and claimed that Linux could be dangerous to Sun. Upon his words, "they may be talking a lot more [about Open Source] than they are or ever will be doing." Jonathan Schwartz's blog has been updated today with a post that is a direct response to Linus claims, but in a much more elegant and coherent way. Sun's CEO notes that "Companies compete, communities simply fracture", and tries to explain why using GPL licenses is taking so long."
There is nothing like media pitting two public figures against one another and, consequently, pitting supporters and detractors against each other, in order to generate some cheap polemic to exploit for some 15 minutes. Nothing to see here, move along.
So this could be a new historical Linus debate.
-- tinyhack.com
Mirror here http://www.ussg.iu.edu/hypermail/linux/kernel/0706 .1/1722.html
My blog
"I see your shwartz is as big as mine."
"Please, shut up. Just when I think you can't say anything more stupid, you speak again." -Archie Bunker.
Many moons ago, I was at Sun Opcom when they were trying to release Solaris 8 source to anyone who would sign a non-disclosure, and it was insanely hard to find the rightful owners and get permission to do so much as publish the code.
If my leaky memory is correct, a number of files had to be rewritten from scratch, just to be able to release them to an audince of friendly customers.
You can imagine how hard it is to hunt down and relicense everything as GPLv3, for either Linux or Solaris! Kudos to Scott and Jonathan for their perseverance.
--dave
davecb@spamcop.net
And to prove the sincerity of the offer, I invite you to my house for dinner. I'll cook, you bring the wine.
most.. awkward.. date.. ever.
Sun are the proverbial me-too, camp follower company.
They don't firmly commit to anything, but merely spend a certain amount of time chasing whichever particular ambulance they think is hot with their customer base at a given moment. When the wind changes, they go off in a different direction.
The controversial summary sent by "javipas" to Slashdot was from the beginning to the end an open attack on Linus Torvalds and his "real" opinion posted to a mailing list . . .
Slightly disreputable, albeit gregarious
It's working together, not working against each other. The F/OSS community is HUGE, but wasting resources is always silly. As Schwartz put it: "Let's stop wasting time recreating wheels we both need to roll forward."
Very nice attitude.
Unfortunately, due to his position, his personal opinion counts for too much. He needs to be more careful posting incendiary comments like this, because the public at large interprets his comments as the position of the rest of the Linux (and dare I say, open source) community. It does not help that his comments are so obviously not well thought out. At least think it through before inserting your foot squarely in your mouth.
People are perhaps reading to much into it. Linus advanced some scenarios, while at the same time giving his reasons. He was blunt, in his style, about some things but I don't see it as an all-out attack on Sun. Even more interesting is that he says that he could be wrong, and that he hope he is wrong, and that releasing Solaris under the GPLv3 would be a very good thing.
Also of note is Theo's de Raadt message in Sun's blog: "Jonathan, I wish the above was true. 15 years ago I was the biggest Sun fan. Today I speak as the project leader for another set of open source projects -- OpenBSD and OpenSSH. OpenSSH will be better known to your audience, as it is what they use daily to connect securely to and from their Solaris (or Linux) machines. OpenSSH killed telnet and rlogin, for those who still remember those mechanisms. We give our software completely freely to the world, without even the standard encumberances people see in the GPL or CDDL. Yet when we turn around and ask Sun to give us documentation for the chips on their machines -- chips Sun themselves designed, not via contractors -- Sun drags their feet. Recently we tried to reopen these 10-year-old repeated requests, and once again nothing positive happened. You may remember, because you and David Yen were in an email conversation with us. Lots of nice open words were exchanged, but no action. However, let me give an example of the duplicity of Sun. (I wish I could use a lighter word). Two operating systems run on Sun's latest PCI-e based (smallish) Ultrasparc-III machines, the v215/v245 -- Solaris and OpenBSD. The latter system runs on those machines because the code to support the non-processor chips on the board had to be written after painstaking reverse engineering, because Sun refuses to make available documentation for how these chips are programmed. Now we will readily admit that not every programmer in the world needs to know how to program these chips. But does every programmer in the world need to know how to program every little detail on Sun's processors, in system mode? Sun gets great press out of UltraSPARC being all "open", but what use is supervisor-mode documentation when the rest of the chips that the supervisor-mode code has to communicate with are entirely undocumented??? The press does not spot this problem, but Jonathan, you should clearly understand this is a fallacy. There are two operating systems which surprisingly do not run on the Sun v215/v245 -- Linux and OpenSolaris. OpenSolaris?? Yes -- Sun isn't even open enough to give the OpenSolaris community enough documentation to support their new machines. So I think that Linus is right, and Sun has a long road ahead."
I tend to listen to Theo's opinion carefully on this subjects. I'm an "FSF fanboy" to the bone, card carrying and all, which curiously is one of the reasons I tend to view Theo's opinion on this subjects with interest, more so than Linus. When it's not a GPL vs BSD thing (which is a fait-diver discussion in my sense of priorities) the fact remains that he seems to see the problems with licencing with a greater depth and in general is more "idealistic" than "pragmatic".
Excuse me while I go selectively erase the mental image of Bill Gates in a French maid uniform from my memory with the time-tested method of blunt trauma to the head.
I never spellcheck and I freely admit it. Save your karma for more worthwhile "lol erorrs" replies
This is just Linus speaking bluntly as always. In fact its comparatively mild compared to some of the things he says. He is never afraid to call a dirt extraction device a spade.
Donte Alistair Anderson Roberts - hi son!
Karma: Chameleon
It remains to see who participates and the nature of the co-operation. Sun contributing Java, even for cynical reasons, says more about Open Source as an evolving business model than a fracturing community.
And so what if it fractures anyway, maybe that makes software evolve in a more "natural" way.
My ism, it's full of beliefs.
To my mind, the relationship between Sun and Open Source has always been coloured by Sun's Big Thing: Java.
As a development platform, Java only had one new thing to offer. Perl, Python, PHP, C et al. are "write once, run anywhere" languages, as long as you publish the source. Sun's contribution is a language that supports "write once, run anywhere" without publishing the source.
In other words, Sun's most interesting contribution to the software industry is a powerful (if painful to use) tool for distributing proprietary closed source applications.
I keep wondering whether they just stumbled into this or whether it was a strategic move. In either case, it's hardly a testimonial to Sun's support of Open Source.
I'm a Programmer. That's one level above Software Engineer and one level below Engineer.
I really don't see what's so controversial about that message from Linus.
- Sun says it'll do A
- Linus says that based on Sun history he is sceptical that they will actually do A, and thinks that they say A but will do something like it, but not completely
- Then he says he thinks Sun should be commended for the things they did.
That's not a war. That is just an opinion that isn't even remotely controversial.
And then someone replies...
If they were really interested in seeing ZFS everywhere, why did they release it in a license incompatible with the GPL license?
Companies compete.
Communities EVOLVE.
Actually, if anything Linux does a better job of supporting hardware for me than Windows does most of the time. Even my 'Windows Only' Wacom tablet. And I don't know when the last time you looked at linux was... but it might be worth having another look..
What? What the hell are you talking about?
"runs the same speed" regardless of "load"? Could you please use some technical terms here? x86 instructions complete in a given number of cycles (barring branch misprediction, to which SPARC is not immune) so intel/AMD chips also always run at the same speed (barring throttling.)
Well, that's fair - so has everyone else. (Some people are simply willing to overlook them)
*cough*bullshit*cough* As a newborn Sun employee, Murdock is thinking about making Solaris more Linux-like. "When people say Linux what do they mean? Linux is a kernel. Cool apps are not written to the kernel. The OS powers higher levels of the stack. What we want is an open OS platform and to make sure that the existing skill sets and knowledge and training investments are leveraged. We don't want to make them learn a new product or rip and replace," Murdock said. "You can make a real argument that Solaris innovated more than Linux in the last few years--such as DTrace and ZFS--but usability stands in the way of appreciating that," Murdock said. "Part of what we are working on is closing the usability gap so that it doesn't stand in the way." (next para, emphasis mine:) "There is no reason we can't make Solaris look and feel more like Linux," he continued. "There are a couple of ways we could do it. We could stick a penguin on it or take a Linux distribution and put a Solaris kernel in it. There are a few Solaris-based distros that have done that. Personally, as the person charting the course and looking at the strategy question, it becomes how to keep the competitive differentiation of Solaris while closing the usability gap."
Perhaps you should try to be informed before you attempt to refute my statements? Especially since you're wrong.
Also, it's worth noting that there's Sun SPARC-based hardware that OpenSolaris doesn't run on, because Sun won't give out sufficient specifications. Theo's way of putting it was "Sun released CPU docs, but that's useless. It is kind of like trying to fix a car engine with the owner's manual. The rest of the hardware is not documented."
Now go away, or I shall taunt you a second time.
"You're right," Fisheye says. "I should have set it on 'whip' or 'chop.'"
... in response to Mr Schwartz. "Jonathan, I wish the above was true. 15 years ago I was the biggest Sun fan. Today I speak as the project leader for another set of open source projects -- OpenBSD and OpenSSH. OpenSSH will be better known to your audience, as it is what they use daily to connect securely to and from their Solaris (or Linux) machines. OpenSSH killed telnet and rlogin, for those who still remember those mechanisms. We give our software completely freely to the world, without even the standard encumberances people see in the GPL or CDDL. Yet when we turn around and ask Sun to give us documentation for the chips on their machines -- chips Sun themselves designed, not via contractors -- Sun drags their feet. Recently we tried to reopen these 10-year-old repeated requests, and once again nothing positive happened. You may remember, because you and David Yen were in an email conversation with us. Lots of nice open words were exchanged, but no action. However, let me give an example of the duplicity of Sun. (I wish I could use a lighter word). Two operating systems run on Sun's latest PCI-e based (smallish) Ultrasparc-III machines, the v215/v245 -- Solaris and OpenBSD. The latter system runs on those machines because the code to support the non-processor chips on the board had to be written after painstaking reverse engineering, because Sun refuses to make available documentation for how these chips are programmed. Now we will readily admit that not every programmer in the world needs to know how to program these chips. But does every programmer in the world need to know how to program every little detail on Sun's processors, in system mode? Sun gets great press out of UltraSPARC being all "open", but what use is supervisor-mode documentation when the rest of the chips that the supervisor-mode code has to communicate with are entirely undocumented??? The press does not spot this problem, but Jonathan, you should clearly understand this is a fallacy. There are two operating systems which surprisingly do not run on the Sun v215/v245 -- Linux and OpenSolaris. OpenSolaris?? Yes -- Sun isn't even open enough to give the OpenSolaris community enough documentation to support their new machines. So I think that Linus is right, and Sun has a long road ahead." Posted by Theo de Raadt on June 13, 2007 at 02:25 AM PDT #
Linus doesn't own the copyright to all the code in the kernel, therefore, he can't change the license even if he wanted to.
If, down the road, the GPL3 is determined to be a good thing, then it might be worth the enormous effort required to (1) get permission the change the license from all the copyright owners we can find, (2) replace code that is owned by coders we couldn't find or wouldn't give permission, and (3) try to do all this without detracting from the real work of developing the kernel.
It's possible, but unlikely, at least in the next 10 years.
*sigh* back to work...
He had sent patches for over a week of GNOME, which needed to be patched. That proved his idea.
What does he plan now? just an E-Mail? what about something creative like last time?
Read and Comment at my BLOG
!!!
"Then Schwartz responded by.... saying lots of nice things."
Schwartz said more than just some nice things. He explained that moving an existing product to the GPL is more difficult than a product that you start and just put under the GPL to begin with. The existing products can have third party code that was licensed. These parties may not want their code put under the GPL.
I can see that you would want to know where every line of code came. This could take time. If you found third party code that was licensed, you have to either remove that code and rewrite it or get the third party to buy off on GPLing their code.
The race isn't always to the swift... but that's the way to bet!
This is fascinating. It seems to me through the number of references in Linus's post to ZFS that he (or at least members of the kernel team) are drooling over it. This is all actually working quite the way RMS intended. Linux may be a GPLv2 stronghold, but as soon as some piece of GPLv3 software comes along which is a *must have* i.e. ZFS, enough pressure will fall on the major copyright holders that they will consider going through the PITA of upgrading the kernel to GPLv3.
That may be the major reason for Linus's striking change of heart on GPLv3.
You have to wonder whether RMS talked to Sun at all about this. We do know that he has praised the company for the decision to GPL Java. If RMS wanted to strongarm Linux into a license change, what better way to do it than through ZFS?
Thank you for your answer. I think we are in the same page, as to what will happen if Sun releases ZFS under GPLv3. Minor nitpick: when I said Sun would be "forfeiting" the patents, I was just thinking about Sun losing that advantage over Linux, their main competitor. You know, what you referred to as the "main differentiator" (which btw I think it's a bit of an overstatement of the benefits of ZFS, but that's beside the point).
Right. But that's no different than the CDDL. Right now, to use ZFS you have to be able to glue a chunk of CDDL code into your project. Linux can't use it because of the GPL (any version). Shouldn't we, by your reasoning, say that that's Linus' fault for choosing the GPL instead of something else?
Anyway, my point is, it was Sun who chose to license it in a way that Linux couldn't touch it. And if they release it under GPLv3 (big if, IMO), that will also be Sun's choice. Now, you may take the charitative view and say that they had to do it that way, or that being incompatible with Linux is an unfortunate, unintended consequence. Me? Well... I guess I've just become too cynical in my old age.
Well, that's your perception. The short-sighted mistake, I mean. To me, it was a sensible choice. If you care about how people use your code, then you don't leave a backdoor for third parties to relicense your code as they see fit. Not even the FSF.
In fact, and this will sound trollish, and I do apologise for that, but after reading the GPLv3, particularly the early drafts, I have to qualify: especially not the FSF.
Oh and btw, I think BK was also a sensible choice at the time. And the offspring of that "fiasco", namely git, more than compensates for everything. IMO of course.
I'm really sorry for being difficult, but no, I would not agree. C'mon, I keep reading GPLv3 advocates saying as much: GPLv2 is not going anywhere, you are as free to use it as you are to choose GPLv3. Now, regardless of how things got the way they are, or whose "fault" was it, Linux is GPLv2, and it doesn't seem likely that that will change anytime soon. Sun can choose GPLv2 if they want. In fact, I think there's a good chance they'll do precisely that, just so they can use the drivers.
I just read notamisfit's reply to my post. He's right, BSD is pretty much free to use it under the CDDL, as is that guy doing the FUSE port. My mistake.
But you're right too, if Sun does that, Linux will not benefit. In fact, unless Sun allows GPLv2, Linux is pretty much out of luck, and the patents ensure that it will stay out of luck. Another unintended consequence, perhaps.
I don't work for sun, nor have I ever. But I do work with both Linux and Solaris, and I have to disagree that ZFS is the only thing that's at all interesting in Solaris.
How about:
1. DTrace
2. Zones/Containers
3. User and process rights management (way better than sudo, IMHO)
4. How about binary compatibility?
I can't stress how hard it is to deliver application binaries on Linux because of incompatibilities between libstdc++.so and libc.so -- and that's on different versions of the same distribution. Try delivering those binaries to a different distro for a real nightmare. This is _never_ a problem on Solaris.
5. Stability -- Linux is stable, but I have to say that Solaris is even more so.
The file systems on our linux machines are much more susceptible to corruption during power outage than UFS or ZFS on Solaris.
6. SMF (Services Management Framework)
A lot of people don't realize how far Solaris on x86 has come in the last 3 years. It's the real deal. I encourage you to find out more, and see for yourself.
Linux covers 1-3 with several kernel trace toolkits, Vserver, AppArmor, POSIX capabilities, and SELinux.
As for binary compatibility, all major distributions support backwards compatibility for different versions of major standard libraries. If it's really an issue, just ship your own shared libraries or link statically.
I don't think anybody has numbers to back up claims about stability. As a nearly 20 year SunOS/Solaris user, I have to say, I have no confidence in Sun's ability to maintain data integrity, and Sun kernel and system bugs have caused me enormous headaches and lost work
Finally, SMF-like self-healing has been around for many years. Recently, it has become popular to throw out the old frameworks and develop new ones. Linux has done that just like Apple and Sun. So, nothing new here.
So does that mean that Semaphore's are useless in OS design?
I would have thought that Dijkstra's work on concurrency was directly relevant to OS design.
Given that Linus originally intended to produce a better kernel for Minix I would say that he achieved that goal. I don't think that AST would give Minix a passing grade if it was turned in for his OS class either. But at the time Minix was missing various features, and newer hardware support which AST did not want to add himself. If you consider the original goal to be "write a better kernel for Minix" then Linus succeeded. If you consider the goal to be "Write a new 386 Kernel from scratch" then Linus also succeeded. If you consider the goal to be "Write a new OS with new features and without just copying previous designs" then Linus failed.
I personally believe that the original goal was a combination of 1 and 2. I do not believe that it was 3 in any way.
Does this make Linus a god? No. Does it make him an extraordinary software engineer? No. Does it mean that he succeeded at his goal? Yes.
Z.
-- Under/Overrated is meta-moderation, and therefore is Redundant.