Torvalds Bemoans Size of RC7 For Linux Kernel 3.5 158
alphadogg writes "A host of small modifications and a large number of system-on-a-chip and PowerPC fixes inflated the size of release candidate No. 7 for Version 3.5 of the Linux kernel, according to curator Linus Torvalds' RC7 announcement, made on Saturday. Torvalds wasn't happy with the extensive changes, most of which he said he received Friday and Saturday, saying 'not cool, guys' in the announcement. However, the occasionally combustible kernel curator didn't appear to view this as a major setback. 'Now, admittedly, most of this is pretty small. The loadavg calculation fix patch is pretty big, but quite a lot of that is added comments,' he wrote, referring to the subroutine that measures system workload."
Re:Why is this a story? (Score:5, Interesting)
Linus bitches and moans about the size of every release candidate. Better that broken stuff gets fixed now rather than with an ever-lengthenng string of point releases after the fact.
The kernel's always pushed the limits of memory, compilers... Here's a typical example from a little over 20 years ago from usenet
From: torvalds@klaava.Helsinki.FI (Linus Benedict Torvalds)
Newsgroups: comp.os.linux
Subject: Re: Help, can't compile 0.95a!
Date: 3 Apr 92 21:27:41 GMT
Organization: University of Helsinki
In article wjb@cogsci.cog.jhu.edu
(Bill Bogstad) writes:
>
> I have a 8 Meg system and also am having problems compiling fork.c.
>I would have thought that would have been sufficient....
Ok, the problem isn't memory: it's gcc-1.40. For some strange reason
the older gcc runs out of registers when optimizing some of the files in
the linux source distribution, and dies. This one isn't the same bug as
the "unknown insn" which was due to my hacks in the earlier 1.40 - this
one seems to be a genuine gcc bug.
Linux 0.95a is compileable with the older gcc if you just add the flag
"-fcombine-regs" to the command line. In fact, the only thing you need
to do is to remove a "#" from the makefiles: the line
#GCC_OPT = -fcombine-regs
should be uncommented, and gcc-1.40 will have no problems compiling the
source. This was documented in some of the release-notes for 0.95, but
I guess I forgot it for 0.95a.
Why remove the flag in the first place I hear you say? Simply because
gcc-2 doesn't understand -fcombine-regs, as it seems to do the
optimizations even without asking. There are other things I had to
change in the source to get gcc-2 to compile it, but this is the only
problem that made the old gcc choke.
With the advent of an official gcc-2.1 (this weekend?), people might
want to change to that one: note however that gcc-2.1 is about twice as
big as 1.40, so it's going to be slower on machines that swap... People
with just 2M of mem might not want to upgrade (*). I like the changes
to 2.1: the code quality seems to be a lot better (esp floating point).
On a slightly related note: the as-binary in newgcc has been reported by
several people to have problems. Getting as from the original
gcc-distribution by me (gccbin.tar.Z) might be a good idea if you have
problems with the newgcc version.
Linus
(*) Even with only 2M of mem, using gcc-2 has it's good points. The
shared libraries should cut down on memory use as well as loading time
and disk-space use. Shared libraries work even with 1.40 if you know how
to build them, but 2.1 does it all automatically...
Re:Hold on a second. (Score:5, Interesting)
It seems like part of what he's trying to point out here is that there may be developers trying to cram in what are really new features into 3.5 by declaring them bugs and pushing them into RC's, rather than waiting until the next release. This behavior wouldn't surprise me in the least.
Re:wow (Score:4, Interesting)
Linus has always been bitchy.
It is why Linux is the way it is now.
If it wasn't for his bitchiness, it would be Windows. Yes, I am not kidding.
There'd be ENTERPRIIIISE CODING brilliance in there, AKA useless bloat for stuff nobody should EVER, IN THE HISTORY OF EVER, have access to, and countless other things. (up YOURS Microsoft! )
What's that, writing a driver are you? If it isn't fully descriptive in code, you're fired!
What's that? You saved a huge number of cycles by using a Goto there? FIRED, we want more lines! (I'm not even kidding, Linus had to defend a Goto in a driver-level file, this is how mad this anti-Goto retardedness is these days, kids man)
So on and so fourth.
Hey, at least he isn't a Ballmer. Nobody can beat ol' monkey boy. ... honest!
Developers developers developers deve... oh go away developers we don't want you in Windows 8 anym... no sorry we were just kidding!
Linus is always solid.
Without him, Linux would turn in to PHP. Look what happened to that. PHP is plain awful now. It started off with a good idea, then all the amateurs took control and ruined it. You don't want that now, do you?
slashverdicrap (Score:2, Interesting)
This networkworld.com article gets submitted to /.:
A host of small modifications and a large number of system-on-a-chip and PowerPC fixes inflated the size of release candidate No. 7 for Version 3.5 of the Linux [networkworld.com] kernel, according to curator Linus Torvalds' RC7 announcement, made on Saturday.
LAST TIME AROUND: Linux kernel 3.4 released [networkworld.com]
Torvalds wasn't happy with the extensive changes, most of which he said he received Friday and Saturday, saying "not cool, guys" in the announcement. However, the occasionally combustible kernel curator [networkworld.com] didn't appear to view this as a major setback.
"Now, admittedly, most of this is pretty small. The loadavg calculation fix patch is pretty big, but quite a lot of that is added comments," he wrote, referring to the subroutine that measures system workload.
However, he noted, there were also the assorted changes for SoCs, PowerPC compatibility, USB and audio to be folded in, forcing a comparatively large RC7.
"Ok, so it's still not *huge*, but it's bigger than -rc6 was. I had hoped for less," wrote Torvalds.
He also hopes that it won't be necessary to deploy an eighth release candidate before Version 3.5 of the kernel can be properly rolled out, and urged the community to "go forth and test."
Among the biggest new features expected in Linux 3.5 is enhanced compatibility with the ARM processor family, which are used in a wide array of low-cost computing devices. Several ARM-related fixes are part of 3.5-RC7, according to the official announcement email and changelog.
The H-Online reported earlier today [h-online.com] that the final version of Linux 3.5 should be deployed next weekend, if all goes well with RC7.
The h-online.com article the networkworld one is a rehashing of:
Over the weekend, Linus Torvalds reluctantly published a seventh release candidate [kernel.org] (RC7) for the 3.5 Linux kernel. In the LKML announcement email [lkml.org], the Linux creator says that he originally thought another RC would not necessarily be required; however, a large number of small pull requests submitted by developers late last week necessitated an additional RC for testing, leading Torvalds to tell the developers, "Not cool, guys. Not cool."
These changes include media fixes, random SOC fixes and PowerPC fixes, as well as patches [kernel.org] for the leap second bug [slashdot.org] that caused Linux systems to freeze because of permanent high CPU loads that resulted in increased power consumption and wasted electricity [slashdot.org]. "Ok, so it's still not *huge*, but it's bigger than -rc6 was," said Torvalds, adding, "I had hoped for less."
Linus has asked the kernel developers to test the rc7 release to "make sure it's all good", and is hoping that he "won't have to do an -rc8". Barring any major problems over the coming week, Linux3.5 will likely be released next weekend. An overview of the changes made in the 3.5 kernel can be found in TheH's Kernel Log mini-series "Coming in 3.5" which examines the various subsystem developments in the upcoming release.
Review each article and notice what is and what is not a link, and where the links lead.
Re:Negative coding (Score:2, Interesting)
Like every large software project it deserves a rewrite from scratch because it's full of cruft, but nobody will ever find the time to do it.
At least some refactoring and de-crufting is done from time to time if some dev gets pissed off enough. Not something that happens in commercial SW development unless the code is hopelessly broken.
Every time someone says this they should be forced to sit in the corner and and copy this essay by Joel Spolsky on things you should never do [joelonsoftware.com] 5000 times and give a copy to each of their friends together with an essay about what they have learned from this punishment.