Linus Torvalds: "GCC 4.9.0 Seems To Be Terminally Broken" 739
hypnosec (2231454) writes to point out a pointed critique from Linus Torvalds of GCC 4.9.0. after a random panic was discovered in a load balance function in Linux 3.16-rc6. in an email to the Linux kernel mailing list outlining two separate but possibly related bugs, Linus describes the compiler as "terminally broken," and worse ("pure and utter sh*t," only with no asterisk). A slice: "Lookie here, your compiler does some absolutely insane things with the
spilling, including spilling a *constant*. For chrissake, that
compiler shouldn't have been allowed to graduate from kindergarten.
We're talking "sloth that was dropped on the head as a baby" level
retardation levels here .... Anyway, this is not a kernel bug. This is your compiler creating
completely broken code. We may need to add a warning to make sure
nobody compiles with gcc-4.9.0, and the Debian people should probably
downgrate their shiny new compiler."
Great. Now the sloth community... (Score:5, Funny)
Re:Great. Now the sloth community... (Score:5, Funny)
I'm a sloth and I thought it was funny.
Re:Great. Now the sloth community... (Score:5, Funny)
(Might as well get the logical fallacies out of the way early...)
Re:Great. Now the sloth community... (Score:5, Funny)
I'm a laddie and I find your post offensive!
I know you're trying to be funny, but... (Score:3, Insightful)
...the people who deserve the apology are the people who were subject to an abusive tirade.
You can point out someone made a mistake. There's no obligation to be "nice" when doing so. There is an obligation to not be abusive, which is what Linus repeatedly does. Abuse includes mockery, ridicule, name calling, etc.
He's being a bully, pure and simple - using his popularity to shove around others. That should not be tolerated, full stop.
Re:I know you're trying to be funny, but... (Score:5, Funny)
This is abuse, arguments are in the next article.
Re:I know you're trying to be funny, but... (Score:4, Funny)
No they're not!
Re: I know you're trying to be funny, but... (Score:5, Insightful)
A guy in charge of a big open source project swears at a specific version of a compiler in a development related mail list, and that triggers an article + 418 comments?
Nobody at the mail thread complained and he filed a bug at the gcc tracker with the specific details and no swearing.
Is it really worth to make a big deal out of every thing this guy says?
Re:I know you're trying to be funny, but... (Score:5, Insightful)
His manner is coarse, but you must admit that he's gotten the job done. Linux advances on schedule, patches get incorporated, code gets tested, and all proceeds smoothly.
Re:I know you're trying to be funny, but... (Score:4, Insightful)
And Mussolini made the trains run on time?
Re:I know you're trying to be funny, but... (Score:5, Insightful)
But you couldn't ignore Mussolini and move on if you did not like his leadership. Here you can.
Re: (Score:3)
Meta godwin aside, I wish a major (market wise) fork would exist with grsecurity merged in by default, for example...
Re:I know you're trying to be funny, but... (Score:5, Informative)
And Mussolini made the trains run on time?
Actually, he didn't. That myth have been repeatedly busted my historians.
Re: (Score:3)
Re:I know you're trying to be funny, but... (Score:5, Insightful)
How else do you make the trains run on time...?
You adjust the timetable to match reality. The trains aren't any faster, but the timetable no longer lies.
Re: (Score:3)
Adjusting the timetable is a short-sighted fix. A real visionary redefines the meaning of late [smh.com.au].
Re:I know you're trying to be funny, but... (Score:4, Funny)
Even god almighty couldn't make Italian transit work, Mussolini never stood a chance.
Re:I know you're trying to be funny, but... (Score:5, Insightful)
He didn't get the job done in this case, though. He sent an abusive email about a bug that had already been patched, with a tirade about register spills that aren't even related to the bug.
Re:I know you're trying to be funny, but... (Score:5, Insightful)
Nobody cares what code you committed. Butthurt v. 2.1 was working fine before your 'improvements.' Just cut out the 'abusive' crap. You sound like some sort of social worker.
Re:I know you're trying to be funny, but... (Score:5, Informative)
His manner is coarse
It's not "coarse", it's abusive. Namecalling, mocking, ridicule, hyperbole. That's abuse.
If you read the message, you may have noticed that he called the code shit, not any person coding it. Same with all other colorful language. I wouldn't get offended.
Re:I know you're trying to be funny, but... (Score:5, Funny)
Won't somebody think of the code!
Re:I know you're trying to be funny, but... (Score:4, Insightful)
none of which was aimed even remotely in the direction of gcc developers personally, but rather to the compiler version one of linus' own peers was using. and using language style the recipient and the mailing list (his mailing list, btw, not gcc's) are likely accustomed to whenever linus runs into a really stupid issue that is none of theirs' fault.
have you just learned to read recently? were you dropped on your head into a pile of sloth droppings as an infant? fail the sat critical reading exam? i know it must be embarrassing, but you'll get better over time, maybe. now *those* were targeted at you directly, not your keyboard's output itself. see the difference?
Re:I know you're trying to be funny, but... (Score:5, Insightful)
>("Getting the job done" does not, and has never required being abusive to others. Getting the job done while being abusive is not proof that being abusive is required or even was part of, "getting the job done.")
Hmmm.. I'm going to disagree here. Being verbally abusive is a technique to demand change in an organization. We all like to think leaders all command respect and everyone just follows them because they're the leader. Bullshit. One technique, employed by MANY leaders is being a total fucking asshole, at least part of the time. You think anyone would be talking about this GCC bullshit (and if what Torvalds says is right, it's really completely fucked up, and not excusable) if Linus just put a nice, politely worded request to just fix shit? I don't think so. But even if he was nice and polite, and got the thing fixed, there's little or no consequence for the fuckup, so it can happen again. If you're coding GCC, maybe you might at least sub-consciously think "boy, I better not release utter shit, or I'll catch some serious shit from that asshole Linus Torvalds... what a cock gobbling asshole that Torvalds is".
This idea you have that everything can work in a nice polite society where everyone has mutual respect for each other can work sometimes, in limited capacities. But the norm is for assholes like Linus to sometimes throw shit-fits, and others to work in fear of having a shit-fit thrown at them sometimes.
Is that the ONLY way to run an organization? Probably not, but as another thread points out, it's a common pattern of effective leaders.
Let's see (Score:5, Insightful)
(1) Microsoft had one guy who dumped on people by calling them "random" (kind of a great insult, actually) and another guy who threw chairs. Dipstick score: 2 Results: tops in their industry.
(2) Apple has a massive "motivator", spelled a-s-s-h-o-l-e, tolerating zero garbage and pushing coders harder than Cleopatra pushed rowers. Dipstick score: 1 Results: biggest and most profitable company, period.
(3) Linux exists at all, despite being given away for free, decades after it was introduced. It is ubiquitous, runs on mainframes and thimbles, and more cell phones than iOS. Chief penguinisto occasionally says "This crap tastes like crap." Dipstick score: 0 Results: most improbably popular free code ever.
Seems like 2014 just might have been the year of Linux on the desktop if Linus had taken some chair-throwing, and stock-option-hoarding lessons from his peers.
Re:I know you're trying to be funny, but... (Score:5, Insightful)
Re:I know you're trying to be funny, but... (Score:5, Insightful)
People who lack humility don't make self deprecating jokes. Ever.
If you investigate why he chose git as the name for his SCM tool, you will start to get an idea of his humility. When he says that others do all the work and he gets all the credit, he is specifically being openly self-deprecating. If you really believe he doesn't do a shit ton of the very important work then you are quite mistaken. After all, who tracked down this very subtle bug, which requires an in depth knowlege of both the kernel and assembly language?
Finally, most of the criticism that comes his way comes from people who don't understand his humor. You can watch his 1995 Google talk on git, where he calls people who use SVN ugly and stupid, to see an example of his humor. If you really think he is arrogant then you are ugly and stupid
Re: (Score:3)
I agree the major distributions have botched almost all of those. Can you site any MAJOR bugs in release ( ie even numbered minor version kernels without -rc etc on the end of them) that issues?
I can't recall any. Like any large complex software project Linux has had its share of bugs but I have been using it in various capacities for 15 years and I can't recall anything in a non-development release that made me go "Good God how did that get past QA".
Re: (Score:3)
Anyway, dreadful bugs? Can't recall any major one. I did have some linux machines locking up rando
Technical Merit really overrated (Score:5, Insightful)
Of the winners in computing, those that won because of technical merit are swarmed by those that won for other reasons.
I mean just look at some of the match ups
DOS vs Everything else available ?
Windows vs Everything else
Microsoft office vs Everything else
X86 vs Everything else
ISA bus vs NuBus vs MCA
DirectX vs OpenGL
Technical merit only seems to matter when it completely crushes every other factor as in transistor vs tube, IC vs transistor, CMOS vs TTL.
Re: (Score:3)
Of the winners in computing, those that won because of technical merit are swarmed by those that won for other reasons.
Things win because they are "good enough", for a "reasonable enough" price, at the right time - but it helps if they are being pushed by a ruthless, anti-competitive monster monopoly.
Re: (Score:3)
Link, please?
Re:I know you're trying to be funny, but... (Score:4, Insightful)
I disagree. Political correctness of the 90s has led to today's "rule" that all opinions are valid and of equal value when anyone with a functional brain knows they are not. Linus is merely saying what ought to be said. Maybe a little public ridicule will be the motivating force to ensure that this sort of thing doesn't happen again.
Would you prefer we hand the developers an award for "participation"?
Not all means of expression are valid & equal (Score:4, Insightful)
Your argument applies to itself. You are accusing people of abdicating judgment: your solution is to not judge Linus! Furthermore, you are confusing criticism of the messenger with criticism of the message; as SuperBanana points out, this is a straw man argument.
Not all opinions are valid and equal: nor are all means of expressing them. We have the right to speak freely; we also have the right to judge such speech as invalid or unacceptable. I suggest this right to judge is in fact an obligation. Silence implies consent. Abusive behavior should be called out. You may argue that Linus was not abusive, but to argue that we should never make such judgments in the first place is to fall prey to the false equivalence you decry.
Re:I know you're trying to be funny, but... (Score:4, Insightful)
6 years ago I set myself a goal that I have reached since: to never work for any asshole again, and to set myself up so that I can comfortably walk away from any job. Now I know I can walk away, and it makes a world of difference in the way I approach my work. My managers also know it, and it makes a difference there too, and in my view I enjoy an altogether healthier working relationship with them. The world needs Linus more than it needs most of us, but that doesn't mean any of us have to stand there and take his abuse while kowtowing to him. The guy needs a good dose of humility.
Re: (Score:3)
In case of Linux kernel
Re:Strawman argument (Score:4, Insightful)
Strawman argument. Nobody except you has posited that "all opinions are valid", and nobody suggested that criticisms can't be made. You invented that position to attack it.
I specifically said: it's fine to tell people they did something wrong. What you may not do is be abusive.
Actually, I can be abusive if I choose to be. It may not win me many friends and it may alienate the ones I do have, but I can certainly do so if I want.
Whether or not Linus advances Linux because of, or in spite of, being abusive is an open question.
As Louis Brandeis (and correctly, IMHO) pointed out, "If there be time to expose through discussion the falsehood and fallacies, to avert the evil by the process of education, the remedy to be applied is more speech, not enforced silence."
Strawman argument (Score:5, Insightful)
Re:Strawman argument (Score:4, Insightful)
You position holds true when dealing with a small child.
If some smears his own feces on a wall and they are:
- 2 years old; you scold them gently and clean them up first, then the wall.
- 20 years old; yeah... not so much. If a little abuse is all you get you're probably lucky.
You've asserted several times that people may not be abusive, and other people have run with some kind of silly argument that Linus isn't, but neither your assertion nor their tangent makes you right.
Re:I know you're trying to be funny, but... (Score:5, Insightful)
The only way to cajole passive aggressives into taking action is to shame them publicly. That's why they whine like little babies and play the victim role. Unfortunately, passive aggressive dynamics run so much of society nowadays that they've been codified into law as 'rights', and the bluntness/truth that contradicts them, 'hate crimes.'
A well placed 'Fuck you!' can save years and years of mountainous, expensive political tugs of war.
Re: (Score:3)
Re: (Score:3)
He's being a bully, pure and simple
Sticks and stones. I'd rather face honest anger than than a disingenuous veneer of reasonableness. And this isn't the first (or second or third) time in the last couple years GCC has been found to have optimized something into wrong code.
Re:I know you're trying to be funny, but... (Score:5, Informative)
If you'd actually read the linked mailing list post (or even just read the quotes of it in the summary) you'd see that none of the abusive comments are aimed at people, they're aimed at the code. He calls the code a bunch of mean, nasty, insulting things, but he doesn't say anything about the people who worked or released that code. I think the distinction is important here. It's not abuse if there's nobody to be abused.
Secondarily: if you read the rest of the thread, he goes on to work with everyone very productively on tracking down the exact nature of the underlying bugs, posts deep analyses of the code generation differences, proposes a patch for his own kernel to work around this GCC bug, and goes and files the upstream Bugzilla report with the GCC team himself. On the whole I'd say this is pretty responsible and cooperative behavior.
Re: (Score:3)
If you'd actually read the linked mailing list post (or even just read the quotes of it in the summary) you'd see that none of the abusive comments are aimed at people, they're aimed at the code. He calls the code a bunch of mean, nasty, insulting things, but he doesn't say anything about the people who worked or released that code. I think the distinction is important here. It's not abuse if there's nobody to be abused.
Secondarily: if you read the rest of the thread, he goes on to work with everyone very productively on tracking down the exact nature of the underlying bugs, posts deep analyses of the code generation differences, proposes a patch for his own kernel to work around this GCC bug, and goes and files the upstream Bugzilla report with the GCC team himself. On the whole I'd say this is pretty responsible and cooperative behavior.
What are you doing bringing objective facts into a Slashdot debate, I mean SWJdot?
Re:I know you're trying to be funny, but... (Score:5, Informative)
Perhaps. But, if you cared to look at the other posts on the thread, you'd see how calm and rationale he was. Or look at the gcc bug report he filed. The gcc bug has gotten fixed
I've met Linus in the flesh a number of years back and he is truly a calm and mellow guy. He only does the "bullying" for the "shock effect" to get people [with strong egos] to actually start _thinking_.
And there is some precedent for this. A number of years back, gcc was doing an illegal code motion optimization across a spinlock. After literally hundreds of posts on the gcc mailing list about how this wasn't a bug, Linus started using muscle. I would have, too, at that point. When somebody finally pointed out that the optimization was actually violating requirements in the memory model of the [then] upcoming ISO C spec, it took another hundred or so posts before they actually believed one of their own [gcc people].
Since that time, the gcc folks have become more receptive to [rather than dismissive of] bugs filed by the kernel people--which is a good thing.
Re:I know you're trying to be funny, but...ppl (Score:5, Insightful)
I'm super tired of this BS argument. I'm sick and tired of high performing professional being criticized for expecting high standards from others. Not every job requires or should have an abstraction layer of "people development," "life coaching," or professional courtesy and pleasantries. Some jobs, the jobs that truly change of course of human events requires breathtaking sacrifice, most significantly of all, putting aside ones ego when called out. If someone calls me an idiot for being wrong, whether justified or not, I'm still wrong and I accept it. If my performance is so shoddy that I get called out as incompetent, than an introspective person should have the maturity to realize that he or she caused such frustration to the other person that such words were uttered. To be able to take this is the sign of a true professional and leader. If you can't take the heat, just GTFO of the way, and go work at a Fortune 500 with regular white collar people with thin skin.
Re: I know you're trying to be funny, but... (Score:3, Insightful)
Sorry, but in an environment driven by praise and scorn more than money, this type of feedback is not only effective, but also probably essential. The absolute sharpest development environment I've ever worked in (in 16 years as a professional programmer) was an environment of harsh, ultra critical abuse and genuine unadulterated excitement and praise on success.
Linus verbally abuses people who shit out bad code because it reduces the likelihood that others will shit out bad code. He also cares about the c
Re: I know you're trying to be funny, but... (Score:4, Interesting)
Re:I know you're trying to be funny, but... (Score:5, Informative)
From a prior discussion from linus.
Oh, I'll be polite when it's called for. But when people who know better send me crap, I'll curse at them. I suspect you'll notice me cursing *way* more at top developers than random people on the list. I expect more from them, and conversely I'll be a lot more upset when they do something that I really think was not great. For example, my latest cursing explosion was for the x86 maintainers, and it comes from the fact that I *know* they know to do better. The x86 tip pulls have generally been through way more testing than most other pulls I get (not just compiling, but even booting randconfigs etc). So when an x86 pull request comes in that clearly missed that expected level of quality, I go to town. Similarly, you will see fireworks if some long-term maintainer makes excuses for breaking user space etc. That will make me go into incoherent rages. The "polite Linus" example that you point to? That was a maintainer asking for direction for when things went wrong and *before* sending me something dubious. Of course I'm polite then. Sarah, I don't have Tourettes syndrome. You seem to think that my cursing is uncontrolled and random. I argue that it has causes. Big difference.
Yes. And I do it partly (mostly) because it's who I am, and partly because I honestly despise being subtle or "nice". The fact is, people need to know what my position on things are. And I can't just say "please don't do that", because people won't listen. I say "On the internet, nobody can hear you being subtle," and I mean it. And I definitely am not willing to string people along, either. I've had that happen too—not telling people clearly enough that I don't like their approach, they go on to re-architect something, and get really upset when I am then not willing to take their work. Sarah, first off, I don't have that many tools at hand. Secondly, I simply don't believe in being polite or politically correct. And you can point at all those cultural factors where some cultures are not happy with confrontation (and feel free to make it about gender too—I think that's almost entirely cultural too). And please bring up "cultural sensitivity" while at it. And I'll give you back that same "cultural sensitivity". Please be sensitive to _my_ culture too.
some people don't believe in going "oh I'm sorry dear, you are an awesome sugar plum fairy but your performance in this little area was below expectations, especially when it is quite clear said person should know far better given their position of responsibility.
He is clear, to the point, and gets things done.
This is not abuse, this is quite clearly saying that it is screwed, and how it is screwed. It is productive conversation.
All of linus' tirades are followed by an in-depth message detailing in what way they are wrong, being direct and to the point is his style, which he is entitled to.
If calling for standards of quality in a very direct way is abuse.. well.. start a new kernel where you accept any old tripe and see how it goes? And only interact/depend on with projects who have a similar standard and means of management.
Linus is a very pragmatic, practical engineer. Don't let feelings get in the way of practical needs people. His style works far better than most.
Re:I know you're trying to be funny, but... (Score:5, Insightful)
Did you actually read the thread?
You know, where Linus tracks down the thing and collaborates very professionally with other devs?
Yes, he uses harsh language at times, but who the fuck doesn't. He does not work in enterprise environment, it's his own mailinglist.
Re:I know you're trying to be funny, but... (Score:5, Informative)
To be fair, the tirade occurred on the Linux Kernel mailing list and was intra-kernel team bitching. This wasn't directed at the gcc devs personally - he was telling another kernel dev that the output of from his version of gcc was crap. It's a snapshot of a mailing list conversation, not an official statement.
His actual bug report [gnu.org] was professional and courteous. He thanked the gcc devs for quickly coming up with a fix.
Re:I know you're trying to be funny, but... (Score:5, Insightful)
Here's how a REAL professional behaves [usatoday.com]. The CEO of Boeing told analysis that he makes his employees "cower", and actually thought that would be a funny joke. Everyone knew that Steve Jobs was something of an asshole [forbes.com]. So is Jeff Bezos and Bill Gates. A lot of the most famous and effective military leaders were real sons of bitches as well. Patton comes to mind, as does his long-time rival, Monty. Norman Schwarzkopf was known for his fiery temper, which gave him the nickname "Stormin' Norman".
Most professional communities are rather pragmatic, and ultimately rewards *success* above all else, unless you cross over a very big line, like doing something illegal, or embarrassing your company to such a degree that it has a negative effect on business (e.g. Patton slapping a soldier). There may something about those personality types that are driven to succeed. It's not universal, of course. Pete Carrol, the head coach of last year's Superbowl winning Seattle Seahawks, is known for being a very nice and laid-back guy [bostonherald.com], and doesn't fit the typical mode of the "screamer" type coaches we've all seen.
Look, I'm not going to defend Torvold's rants. I think they're childish as well, but let's not kid ourselves. These sort of rants and worse happen all the time in "professional" environments. Would it be great if people were universally nicer to each other? Sure. But when getting a job done, is being nice or being competent more important?
At least he hasn't tossed any chairs around that we know of.
Re:I know you're trying to be funny, but... (Score:5, Insightful)
From linus at a prior time
Oh, I'll be polite when it's called for. But when people who know better send me crap, I'll curse at them. I suspect you'll notice me cursing *way* more at top developers than random people on the list. I expect more from them, and conversely I'll be a lot more upset when they do something that I really think was not great. For example, my latest cursing explosion was for the x86 maintainers, and it comes from the fact that I *know* they know to do better. The x86 tip pulls have generally been through way more testing than most other pulls I get (not just compiling, but even booting randconfigs etc). So when an x86 pull request comes in that clearly missed that expected level of quality, I go to town. Similarly, you will see fireworks if some long-term maintainer makes excuses for breaking user space etc. That will make me go into incoherent rages. The "polite Linus" example that you point to? That was a maintainer asking for direction for when things went wrong and *before* sending me something dubious. Of course I'm polite then. Sarah, I don't have Tourettes syndrome. You seem to think that my cursing is uncontrolled and random. I argue that it has causes. Big difference.
Yes. And I do it partly (mostly) because it's who I am, and partly because I honestly despise being subtle or "nice". The fact is, people need to know what my position on things are. And I can't just say "please don't do that", because people won't listen. I say "On the internet, nobody can hear you being subtle," and I mean it. And I definitely am not willing to string people along, either. I've had that happen too—not telling people clearly enough that I don't like their approach, they go on to re-architect something, and get really upset when I am then not willing to take their work. Sarah, first off, I don't have that many tools at hand. Secondly, I simply don't believe in being polite or politically correct. And you can point at all those cultural factors where some cultures are not happy with confrontation (and feel free to make it about gender too—I think that's almost entirely cultural too). And please bring up "cultural sensitivity" while at it. And I'll give you back that same "cultural sensitivity". Please be sensitive to _my_ culture too.
In effect you are whining that calling a crap code submission crap is not professional. Linus is a very pragmatic and practical man. That so many people want everything to go smoothly and politely even when shitty things are submitted/done reflects poorly on that "everyone is a winner" kind of culture that propagates that mentality.
We should not prioritize peoples feelings over code quality. If something horribly break things that we've known for a while and know they are capable of better, we should be able to tell people that that was crap and we expect more of them without them whinging to the political correctness police yelling "abuse".
This mentality seems to keep on spreading amongst the new generations, and I fear for what the software development industry will look like in fifty years with all of the pragmatic people thrown out by those more concerned of peoples feelings.
Re:I was moderately amused by the typos (Score:5, Insightful)
It's not ginned up outrage to waste dozens of man hours for someone else's mistake. GCC can be considered a Teir 1 OSS project. For a major point release to have an issue that, if verified, causes the founder of Linux to call it crap, then raw criticism is warranted. Raw, unfiltered , communication amongst trusted engineers leads to better outcome, I have found in my career. Keep the politically correct crap outside of the engineering room.
It's a bug. Squash it. (Score:4, Interesting)
Re:Great. Now the sloth community... (Score:4, Funny)
is going to be gunning for an apology...
Maybe, but it take a while for them to get worked up enough to do anything...
Linus is just envious because Sloths are cuter (Score:3)
http://i2.cdn.turner.com/dr/hl... [turner.com]
gcc is like congress (Score:5, Funny)
"pointed" (Score:5, Funny)
From Torvalds, that's uncharacteristically friendly.
Or upgrade to llvm ... (Score:5, Insightful)
Debian people should probably downgrate their shiny new compiler.
Or upgrade to llvm. Being above to compile with either gcc or llvm would be a nice option.
Re:Or upgrade to llvm ... (Score:5, Insightful)
Debian people should probably downgrate their shiny new compiler.
Or upgrade to llvm. Being above to compile with either gcc or llvm would be a nice option.
It's amazed me how attitudes from LLVM in the last few years has gone from:
"OMG WTF why is Apple doing their own compiler why can't they contribute to GCC they want to make everything proprietary"
To:
"Hey, LLVM is a pretty great tool."
I'm happy to see LLVM making such great strides.
Re:Or upgrade to llvm ... (Score:5, Interesting)
Yes. Choice is nice. That's why I've migrated away from all of Apple's 'flagship' products, which are proprietary closed off dead ends.
Re:Or upgrade to llvm ... (Score:5, Interesting)
LLVM has improved a lot, but in CPU-bound workloads such as cryptography, GCC still outperforms it by 15% or more.
Re: (Score:3)
Erm, LLVM was around for half a decade before Apple started contributing to it.
Compiler doesn't change the license ... (Score:5, Informative)
Debian people should probably downgrate their shiny new compiler.
Or upgrade to llvm. Being [able] to compile with either gcc or llvm would be a nice option.
How could you _upgrade_ from GPLv3 to BSD? Sounds like the reverse.
Compiling with a BSD licensed compiler does not change the license of the software being compiled. Linux would remain gpl regardless of whether gcc or llvm is used.
Re: (Score:3)
You're calling 'more liberal' 'more free'.
Doesn't work like that. How free is OS X (based upon BSD-licensed software)?
BSD is very permissive - to the point of permitting software being based on it ceasing to be free.
GCC is more restrictive, assuring both the license and the source spreads "virally" with the program, so the program never ceases to be free.
Re:Or upgrade to llvm ... (Score:5, Informative)
That may be an upgrade if all you program in is a C-derivative.
"Originally implemented for C and C++, the language-agnostic design (and the success) of LLVM has since spawned a wide variety of front ends: languages with compilers that use LLVM include ActionScript, Ada, D, Fortran, OpenGL Shading Language, Haskell, Java bytecode, Julia, Objective-C, Swift, Python, Ruby, Rust, Scala, and C#."
http://en.wikipedia.org/wiki/L... [wikipedia.org]
Re: (Score:3)
There's much to be said for insisting that the kernel should compile and run fine with either compiler. That way, it can't depend on some odd interpretation of the language spec.
Not just version 4.9 (Score:5, Informative)
According to the actual bug report this problem seams to have started in 4.5. They only triggered it in 4.9.
https://gcc.gnu.org/bugzilla/s... [gnu.org]
Already fixed. (Score:5, Informative)
... and they already fixed the bug two weeks ago, see the bug report [gnu.org]
Re:Already fixed. (Score:4, Informative)
...in 4.8.3. Then it resurfaced in 4.9.0 and .1
Re: (Score:3)
Compiler bugs are the worst. No matter how carefully you analyse the program you wrote, you can't see the bug, yet the crashes keep happening.When the code being run isn't the code that was written, all bets are off.
Each new GCC version has regressions (Score:3)
4.8 was even worse.
That's hardly news.
Oe noes! A compiler bug! (Score:5, Interesting)
Oh gosh a compiler bug! The world is going to end and GCC is terminally broken for ever and ever and ever. Life happens, and occasionally that includes compiler bugs. I've seen fewer bugs in GCC than any other production compiler ever.
Anyway, it seems like GCC is implementing a very obscure compiler option incorrectly in some circumstances which causes a crash.
But of course this is cue for lamentations of how awful and braindead GCC is and so much drama.
End result, the GCC people will fix this bug in short order (what are GCC point releases for anyway), and distributers will probably have a patch package out for 4.9.0 before 4.9.1 ships (what are distributors for anyway?) and the world will keep turning and GCC will go back from being the buggy broken braindead piece of shit to yet again being the most solid production compiler in existence.
It's a little ironic that the he's so quick to attack the GCC people. The success of Linux is 100% built off the success of GCC. There have been no other credible compilers for Linux throughout the majority of its existence and without GCC being bulletproof, Linux would never have been solid.
Re: (Score:3)
...It's a little ironic that the he's so quick to attack the GCC people. ...
Especially since the Linux kernel has always been bug-free.
Re:Oe noes! A compiler bug! (Score:5, Insightful)
End result, the GCC people will fix this bug in short order (what are GCC point releases for anyway)
The bug was reported 4 point releases ago. It just now started effecting the kernel.
In fact, it has been fixed in trunk even before Linus' rant.
https://gcc.gnu.org/bugzilla/s... [gnu.org]
Re:Oe noes! A compiler bug! (Score:5, Funny)
Since the bug has already been fixed [gnu.org], I suppose this means you'll be wholeheartedly endorsing Obama now?
Re:Oe noes! A compiler bug! (Score:5, Interesting)
Claiming the GCC crew will 'fix this bug in short order' is like claiming Obama is leading the charge in transparent government.
Care to take a wager that it will be fixed in 4.9.1?
GCC has never been a solid production compiler.
Utter crap, bordering on an outright lie.
The list of systems I've developed on is something like: PCs, Sun, SGI, HP, AIX, PICs, 8051, Blackfin, ARM, AVR and probably a bunch I've forgotten about. I've used very many compilers over the years. There has not been one that can match GCC in solidity and general lack of bugs.
Not. A. Single. One.
But apparently "production compiler" in your world means something completely different.
You have that pretty much backwards. Without Linux, GCC wouldn't matter to anyone. Linux can be built with other compilers with a little effort, ask Intel about it.
As far as I know, it's been GCC, Intel (which is useless for Linux's most popular platforms) and TCC. I don't know of anyone who actually uses a non GCC compiled kernel.
You're pretty clueless. Intel would beg to differ. No one that matters compiles high performance code on GCC, they use the Intel compiler.
Ah no TRUE scotsman would use GCC. Got it.
Re:Oe noes! A compiler bug! (Score:5, Informative)
Care to take a wager that it will be fixed in 4.9.1?
You'd lose that wager. The bug was fixed in the trunk before Linus even reported it but the fix didn't make it into 4.9.1.
For those who didn't bother reading through the LKML discussion and GCC bug reports: GCC 4.5.0 started doing bad things when a certain combination of flags was set, causing it to potentially use the stack pointer red zone [wikipedia.org] even if explicitly told not to. This usually didn't lead to problems because the most programs can afford not to care about whether the red zone is used. The kernel can't; if you use the red zone in the wrong place your system crashes. This was only noticed in 4.9.0 because that version changed around some unrelated code which now caused the kernel to be compiled in such a way that the bug became relevant.
Re: (Score:3)
Really? I hate GCC with a passion. Otherwise, we wouldn't have 'gccisms' that affect code portability to other POSIX platforms. GCC can go DIAF for all I care.
So, tell me mr GCC hater, which compilers don't have non-portable extensions?
Re:Oe noes! A compiler bug! (Score:5, Insightful)
GCC is a mess that has been getting consistently worse since 3.0. It's so bad that compiling GCC with GCC, with any CPU optimizations enabled, produces a non-working compiler.
[citation needed]
It just keeps getting bigger and slower, and has a great many proprietary GCC-isms that open source developers keep using, not even realizing they're bugs.
Every single compiler out there offers nonportable extensions.
Either you're not looking (myopia is fun), or you have very little experience with other modern compilers.
I could level the same complaint at you. The other compilers have more. Like full up ICE crashes.
Only true if you drink rms' kool-aid...
Ah and now we get to the root of it. You've decided to throw logic and facts to the wind and just go off on an I-hate-RMS-so-I-hate-GCC-by-proxy rant.
Grow up.
Why the asterisk? (Score:5, Insightful)
If you want to say shit, say shit. We're all grown-ups here.
Re:Why the asterisk? (Score:5, Insightful)
Yea, my first thought when I read that was 'How retarded is timothy to think that implying a word without using the actual word is any different'. Its stupid. Its like saying 'the n word'. We all know EXACTLY what you mean, you're just too chicken shit to actually say it.
Oh, and he had to tell us that Linus didn't use the asterisks!
Re: (Score:3)
And, Linus actually used asterisks, just placed another way:
Ok, so I'm looking at the code generation and your compiler is pure
and utter *shit*.
Re:Why the asterisk? (Score:4)
We're all grown-ups here.
On /.? Oh you mean age-wise...
Strange censorship (Score:5, Funny)
So he actually called it, "pure and utter sht"?
Re:Strange censorship (Score:5, Insightful)
So he actually called it, "pure and utter sht"?
Remember, that's the guy that said "Nvidia, F*CK YOU!". http://www.youtube.com/watch?v... [youtube.com]
He's a passionate, colorful character...he's been like that for as long as I can remember him. Thank god there's still awesome nerds out there that just can't be bought.
Re: (Score:3)
Actually, it already happened, with gnu moving first.
RMS *already* demanded that Linux be called "lignux", and changed the code of EMACS at one point to make that, rather than "linux", the target.
hawk
Fuckin' C*nsorship (Score:5, Insightful)
Re: (Score:3)
Just move to LLVM and clang for Pete's sake and st (Score:3)
Linus is right, GCC is braindead. Its code is purposely opaque and has huge maintenance problems. This is not the first time GCC is the source of suffering. I remember the bug in 2.95 causing all sorts of grief.
It would be interesting if the kernel devs switched to clang like FreeBSD has done. Even just the threat of doing so could give at least a good rivalry and competition usually means the one who improves the fastest will survive.
I'd bet Linus is fully right on this one. (Score:4, Insightful)
Seriously, the GCC is a prestige project just like the kernel. You have to have the basics of your particular software development field down, otherwise you have no business whatsoever lost in these projects. I don't know the details and I certainly can't judge them, but from the broad perspective it seems like somebody did something akin to not avalidating and filtering your input or pushing windows-1252 but presenting it as UTF-8 or something in webdevelopment and it passed all the way through evaluation, testing, merging, release management, etc. right into the final GCC release. Which does reflect on to the entire team and project.
Bottom line: When Linus has released rants like these in the past he usually was spot on and dead right. The GCC has gotten some flak for it's shittyness lately, and it looks like they haven't improved their process much yet.
Re:Surprise, surprise... (Score:4, Funny)
I don't 'like' lima beans, that doesn't mean there is anything wrong with them. In this case your lima beans have been switched out with castor beans and you're dying. Pretty big difference.
Re: (Score:3)
I don't 'like' lima beans, that doesn't mean there is anything wrong with them. In this case your lima beans have been switched out with castor beans and you're dying. Pretty big difference.
It's a compiler bug, for Pete's sake, not the end of the world.
.
Revert to a known working version of the compiler, submit a bug report and move on. Why the temper tantrums? What is with all the drama?
Nobody owes anyone anything in that case (Score:3)
Does it matter? What matters is that Tridge fucked around and violated the licence and the fallout hit Linus in the form of having to do a lot of unnecessary work. Being only human this appeared to have made him angry.
Try reading the above post entire instead of key words then. It's only three lines long. I can wait.
If you use software it's only fair to stick to the licence the creator wished you to use - if you don't like it use som
Re: What is rbp anyway? (Score:5, Informative)
rbp is a stack pointer [hackerschool.com] it is negative because it grows down.
Re:What is rbp anyway? (Score:4, Informative)
%rpb is the base pointer. The offset is negative because the local variables live below the base pointer (being in-scope only after the base pointer is moved to the current function); -X(%rbp) points to a local variable.
http://stackoverflow.com/quest... [stackoverflow.com]
Why does anyone work with this guy? (Score:5, Insightful)
Re: (Score:3)
Nice concern troll.
Linus is quite lenient compared to the leadership at microsoft or apple. The latter are more interested in appearance than they are in technical excellence because appearance is all that matters when appealing to their non-tech customers. The problems lie where these products must be maintained by technical people for the non technical customer who is usually their boss.
If you can make a good case for your position/code, linus will listen to you.. If you're full of shit or crying like a
Re:Linux, a miracle (Score:5, Insightful)
Re:Linux, a miracle (Score:5, Insightful)
Because if you aren't incompetent, you won't get yelled at.
Unlike a corporate structure, where you don't get yelled if you play the game right.
If you are incompetent, please don't develop linux kernel code. Go work for a corporation.You'll find you're a better fit, and if you play your cards right, you won't get yelled at no matter how bad you are at your job.