Red Hat Stops Shipping Kernel Changes as Patches
mvar writes to point out a report from h-online about the Red Hat
kernel source controversy. From the article: "Red Hat has changed
the way it ships the source code for the Linux kernel. Previously, it
was released as a standard kernel with a collection of patches which
could be applied to create the source code of the kernel Red Hat
used. Now though, the company ships
a tarball of the source code with the patches already
applied. This change, noted by Maxillian Attems and
LWN.net, appears to be aimed at Oracle, who like others, repackage
Red Hat's source as the basis for its Unbreakable Linux. Although
targeted at Oracle, the changes will make work harder for
distributions such as CentOS."
Did they stop shipping diff too?
Um. So...
Use diff and get your own patches?
Or am I missing something?
"Although targeted at Oracle, the changes will make work harder for distributions such as CentOS."
That's not what CENTOS says.
"This description is accurate. However, as pointed out multiple times by now, it does not affect rebuilding of the kernel itself. The CentOS kernel is just a rebuild, so there is no problem there. In the case of the centosplus kernel, because it may add patches, some extra steps might be needed. But again, that is not a major issue."
https://www.centos.org/modules/newbb/viewtopic.php?topic_id=29147&start=280
Screw those asshats at oracle who have the nerve to package up rhel and call it their own. Even worse their idiot sales reps go around promoting it as the only thing that will run their db. All they contribute to open source is FUD.
Good. CentOS embodies the problem with GNU open source. People just take whatever work you have done and put their own name on it. The pinnacle of the leech-ness. No thought to adding or improving, just taking your work because they don't want to pay you for the work YOU did. So good, if it makes it a pain in their ass. I like open source. I don't like people taking money from you because they just don't want to pay for the work you did. Granted Redhat leverages the open source stack; but it adds value (installer/packaging, configuration tools, updates, etc.). That is what they charge for. What does CentOS do other than take the work Redhat does and give it away for free? Seriously. That is taking money away from Redhat. And yes, I do pay for distributions or support periodically because I believe the distros need revenue to keep Linux viable. How many of those about to flame me actually pay for any of the distros they use? Some maybe. Most I am certain, no.
-- I ignore anonymous replies to my comments and postings.
Since CentOS is basically removing trademarks and recompiling how exactly does this make their work more difficult? Does CentOS not ship the same kernel as Red Hat by using Red Hat source? Wont CentOS simply compile the pre-patched source from the tarball and be good to go?
$ tar xzvf linux-2.6.nn.tar.gz
$ tar xzvf linux-redhat-2.6.nn-02.tar.gz
$ diff -Naur linux-2.6.nn linux-2.6.nn-02 > redhat-02.patch
$ diff -U redhat-01.patch redhat-02.patch | more
It also makes life much harder for us downstream engineers who actually have to troubleshoot problems in the Redhat kernel. More often than not, it's a vendor-applied patch responsible for creating the problem in the first place. Now I guess it's up to Redhat Support to come up with a solution, which often reads "in 3 major versions time, if ever"
It is like we are back in the last century. GIT and branches can easily handle parallel changes from different vendors. Sometimes merges can be tricky, but it is not different if normal patches. So the only benefit for RedHat is that they now generate a much simpler package and that it is.
I don't see why it would make anything harder for centos or oracle, I doubt they check the code of every redhat patches before applying them. Redhat sells a product so the patches must be good and if they are good for them they are fine for centos and oracle too
On the contrary it might be harder for other distro not based on rh to get a single patch out of the kernel
Red Hat spends over $100 million dollars a year on R&D, and they give all of that work away for free through the Fedora Project. They've bought numerous companies and made previously closed source code Open. They're the #1 commercial contributor to many of the most critical upstream projects like the kernel, glibc/gcc, X.org, GNOME, the list goes on and on. Red Hat does more for the Linux and other Open Source communities than any other company on the planet.
Red Hat is doing more heavy lifting than anyone else, but organizations like Oracle and CentOS are leeching off of Red Hat's hard work. Red Hat has asked to be fairly compensated for their work. How unreasonable is that? Who doesn't want to make a fair wage for hard work? Red Hat is still giving everything away through Fedora. All they seem to be doing is protecting their paid Linux business. That same business which funds more development and engineering than anyone else out there. How is that unreasonable?
The GPL only requires that they give source code to entities which have gotten their binaries. Instead, they give it to the whole world. They are absolutely meeting the requirements of the GPL. To claim otherwise is just sensationalist drivel. Great headline for getting page hits and selling advertising, but pretty irresponsible reporting.
If these other organizations like Oracle and CentOS were saying "we're going to fork what Red Hat has done and come up with something different because we think we can do it better," like Mandrake did, that would be one thing. But Oracle and CentOS both pretty much have the same message: "we're going to take all the hard work that Red Hat has paid for, claim that ours is just like theirs, but make sure that Red Hat doesn't get paid for it." That's a losing game. In the long term, it hurts everybody. If Red Hat doesn't get compensated, they can't put as many engineers on projects. The community loses. Let's say that this leeching strategy is totally successful, and no one pays Red Hat any more. Red Hat fails, and Oracle and CentOS get their sources from... where, exactly? Again, everyone loses.
I hear the cry already - "but that's within the letter of the Open Source rules!" Correct. Obviously it is. But is that the spirit of Open Source? Does anyone claim that Open Source was intended to deprive a developer of fair compensation? I don't think so. So why are sensationalistic articles making Red Hat out to be some sort of villain for doing what is legal, prudent and ultimately, better for the community - protecting their work and staying in business?
Oracle wants to obey the GPL license for Java, but not the spirit of the GPL. As you sow, so shall you reap.
tomorrow who's gonna fuss
Precisely CENTOS is not going to be bit by this. The problems arise if you try to take RedHat's patches and apply them in other distributions (Attems is in the Debian kernel team, so he is among the most affected people), or if you are among the breed of people still patching and rolling their own kernels.
So far, off-the-mainlain Linux kernel development has been a collaborative effort with people from different backgrounds joining in. Of course, RedHat –as a business– has to keep a competitive advantage. And that advantage can stem from saying here is a megapatch with all of our improvements, with no distinction between feature lines, with no documentation on what does what besides the code itself".
I understand their point, but am deeply saddened by it. And yes, it is legal and sound, although goes against _collective_ Linux state-of-the-art advancement, beyond each company's interests.
But is that the spirit of Open Source? Does anyone claim that Open Source was intended to deprive a developer of fair compensation? I don't think so.
The spirit of Open Source is to promote the sharing of ideas and knowledge (thus code). It has nothing to do with developer compensation. In fact.. developers feeling entitled and expecting compensation is against the spirit of open source. You don't get to say "I gave away my labor for free so now pay me". Tough shit. You should have used a different license buddy...
There's a big difference between allowing companies to not honor the spirit of the GPL and actively helping them to do so. I think in this case Red Hat is justified and Orachole will just have to deal with the consequences of not playing nice.
Given that 6 years ago Oracle had an 80,000 sqft datacenter full of thousands of RHEL 3 and 4 servers, I'm actually surprised it took RedHat this long to do something about them. They were cut out of some significant revenue by Oracle Enterprise Linux as Oracle standardized on RHEL both internally and for their hosted customers years ago. They had three main datacenters at the time, and I have no idea how many actual RHEL licenses they paid for, but it had to be at least 15,000 back in 2006 or 2007.
I worked at the Texas facility and fixed lots of RHEL boxes. This was before OEL. The facility was meant to support 20,000 servers. At the time, it was supposed to be the largest "Redhat on Dell" deployment in the world.
I like open source. I don't like people taking money from you because they just don't want to pay for the work you did.
If you don't like the idea of people being able to freely use and redistribute your work, then you neither understand nor like open source software, because that is the the entire point.
And since they'll be searching a single diff instead of a lot of patches, it may actually be easier ;-)
Duh. Or is Redhat going to dump all the source files into a single dir too? Somehow I think that would be more trouble than it's worth for them.
I don't see how this affects anyone, even Oracle.
To be honest, I wonder why it took them that long. I have been doing RPM packages for quite some time and have always hated 1000+-patches source RPMs such as Red Hat's kernel source package. This is a welcome change.
I guess they use git internally, so that would just be a git archive --prefix=linux/ | gzip >linux-src.tar.gz. I haven't looked at the package yet, but the really good stuff would be if they provided a link to the git repos and the SHA1 for the commit ID used to generate the archive: this way, RH derived kernels would have quite an easy time rolling their own if needed.
I don't know if it's in the spirit of the GPL or not, but it's definitely in the spirit of being a dick.
Red Hat's job isn't to make things easier for CentOS, or Oracle for that matter - how is that even relevant? Red Hat isn't doing anything that's disallowed by the GPL. They're not even doing anything that could be reasonably interpreted as "contrary to the spirit of the GPL".
They're still releasing the source. They're still paying their coders to do substantial work on the kernel. How big of a twit do you have to be to complain about how they release their kernel updates?
#DeleteChrome
Not long ago Apple released the source for Safari as one big repository. The Konqueror people complained that they couldn't apply the changes. Apple seen as an enemy of opensource, yet the source is still available on the net.
How is this situation different? Can someone enlighten me?
Coincidentally enough, this state of affairs has been in place for 6 months, but this slashdot/lwn note comes the morning after I discovered the fact myself while trying (still as yet unsuccessfully) to rebuild the kernel with support for one odd driver enabled instead of disabled.
What strikes me as missing from the current set of comments, is how this move by RH seems at odds with their laudable history of 'upstream upstream upstream'. I.e., it seems to me that each of those hundred(s) of patches will now be significantly less likely to be adopted upstream, because of the added complexity of not knowing the details of - the mother of all deployments - of those patches. Details meaning, what other changes does it depend on, and happen to be shipped with in its stable and vast commercial deployment.
The other tinfoil-hat/security consideration is- if RH is as in bed with the NSA/CIA as it seems to me to have been for a very long time, and if the NSA/CIA did want to hide backdoors or backdoor enabling faults in the kernel, this is precisely the kind of move that would make those sorts of things orders of magnitudes more difficult for the traditional 'many eyes' effect to detect.
But of course, the bottom line is that what they are doing is quite legal, and from traditional business perspectives, quite ethical, and probably practical as well. But to the commenter who said there are 'no downsides' to this- No, there are downsides.
I briefly worked at F5 Networks. They are "the community" behind CentOS. They had an in-house extension to call whenever you found any RedHat Branding in CentOS. The entire "distribution" was created so that they could put Red Hat into their enterprise load balancers without having to do that pesky licensing and fair dealing thing.
I am all for Red Hat doing whatever they want in this respect to CentOS, as CentOS is an unfair deal in the first place (IMHO of course).
Nohting in the GPL requires the source to be delivered as base plus patches. Red Hat was bing a good citizen. Others were being less so. Red Hat decided to play the field provided.
It is a loss to the honest people, but dishonesty is always a loss to the honest people eventually. If CentOS et al were engaged in something more than just scraping the serial numbers off of other people's work, then I would be more upset.
Stealing other peoples earned reputation by re-marking it as your own with little-or-no attribution is bound to invoke human nature against you eventually. It was only a matter of time. I bet Red Hat will _also_ make the patches available to those who ask. That is, just because their default distribution is a pre-patched blob, and lets face it, everyone was applying the whole patch set by default anyway, doesn't mean that the patches are going to be kept in a vault somewhere. Maybe "asking for it" will require a support contract. Maybe it will just require asking. Who knows.
But if Red Hat manages to make F5 pay what they should have paid in the first place instead of spending a like amount on "running a distribution" chop-shop maybe the fair dealing would have never caused this sort of thing in the first place.
(And yes, I have a problem with F5.)
Innocent people shouldn't be forced to pay for inferior software development.
--"Code Complete" Microsoft Press
F5 Networks scratches off the serial numbers of Red Hat enterprise and produces CentOS so that they don't have to license Enterprise from Red Hat. They started this (CentOS) because every one of their Big-IP boxes was running Red Hat and they needed a stripped version to avoid paying the license fees for Red Hat's work. They explained this to me and then gave me the in-house extension to call if I found any Red Hat branding back when I worked there. (Yes, I have first-hand knowledge of these facts.) It's wrong at a moral level, but so what.
Most people who get Red Hat kernels end up applying all the patches anyway. Why is it more efficient or reasonable to release the kernel to all those people as straight-source plus patches, when they all want patched source in the first place. From an efficiency standpoint releasing the patches source is good for everybody but the leaches.
If F5/CentOS was going through the trouble to bundle and test all the packages form the same sources as Red Hat is getting them, then this wouldn't be a issue. It isn't about the sources of the sources, its about the testing and integration that Red Hat does that F5/CentOS has chosen to use with less than a nod.
So F5 is too cheap to pay for Red Hat's work, and they are too cheap to _duplicate_ Red Hat's work, and they are too cheap to build a distribution that _only_ contained what they actually needed, so where _exactly_ is Red Hat wrong for the very human response of saying "blow off, you freeloaders..."?
Besides, I bet if you pay support, or ask nice, you can get the patches anyway. The fact that the default distribution is fully patched instead of making you spend the time to patch it yourself is actually a _win_ for the paying customers.
And all of these actions from both companies are fully GPL compliant.
So where is the "problem" really?
Innocent people shouldn't be forced to pay for inferior software development.
--"Code Complete" Microsoft Press
oh boohoo. opensource != redhat works for you.
There are always leachers, big and small. There are always griefers, big and small. The system works inclusive of the leaching and whatnot.
Progress and cash are not inextricably linked in open source. Not even close.
Measuring things by the outliers is never correct.
So you just soak up the dumb while you soak up the smart.
But if you hide from the extremists of any ilk you give them a chance to sneak up on you.
Innocent people shouldn't be forced to pay for inferior software development.
--"Code Complete" Microsoft Press