Linus Torvalds Calls Blogger's Linux Scheduler Tests 'Pure Garbage' (phoronix.com) 191
On Wednesday Phoronix cited a blog post by C++ game developer Malte Skarupke claiming his spinlocks experiments had discovered the Linux kernel had a scheduler issue affecting developers bringing games to Linux for Google Stadia.
Linus Torvalds has now responded: The whole post seems to be just wrong, and is measuring something completely different than what the author thinks and claims it is measuring.
First off, spinlocks can only be used if you actually know you're not being scheduled while using them. But the blog post author seems to be implementing his own spinlocks in user space with no regard for whether the lock user might be scheduled or not. And the code used for the claimed "lock not held" timing is complete garbage.
It basically reads the time before releasing the lock, and then it reads it after acquiring the lock again, and claims that the time difference is the time when no lock was held. Which is just inane and pointless and completely wrong...
[T]he code in question is pure garbage. You can't do spinlocks like that. Or rather, you very much can do them like that, and when you do that you are measuring random latencies and getting nonsensical values, because what you are measuring is "I have a lot of busywork, where all the processes are CPU-bound, and I'm measuring random points of how long the scheduler kept the process in place".
And then you write a blog-post blamings others, not understanding that it's your incorrect code that is garbage, and is giving random garbage values...
You might even see issues like "when I run this as a foreground UI process, I get different numbers than when I run it in the background as a batch process". Cool interesting numbers, aren't they?
No, they aren't cool and interesting at all, you've just created a particularly bad random number generator...
[Y]ou should never ever think that you're clever enough to write your own locking routines.. Because the likelihood is that you aren't (and by that "you" I very much include myself -- we've tweaked all the in-kernel locking over decades, and gone through the simple test-and-set to ticket locks to cacheline-efficient queuing locks, and even people who know what they are doing tend to get it wrong several times).
There's a reason why you can find decades of academic papers on locking. Really. It's hard.
"It really means a lot to me that Linus responded," the blogger wrote later, "even if the response is negative." They replied to Torvalds' 1,500-word post on the same mailing list -- and this time received a 1900-word response arguing "you did locking fundamentally wrong..." The fact is, doing your own locking is hard. You need to really understand the issues, and you need to not over-simplify your model of the world to the point where it isn't actually describing reality any more...
Dealing with reality is hard. It sometimes means that you need to make your mental model for how locking needs to work a lot more complicated...
Linus Torvalds has now responded: The whole post seems to be just wrong, and is measuring something completely different than what the author thinks and claims it is measuring.
First off, spinlocks can only be used if you actually know you're not being scheduled while using them. But the blog post author seems to be implementing his own spinlocks in user space with no regard for whether the lock user might be scheduled or not. And the code used for the claimed "lock not held" timing is complete garbage.
It basically reads the time before releasing the lock, and then it reads it after acquiring the lock again, and claims that the time difference is the time when no lock was held. Which is just inane and pointless and completely wrong...
[T]he code in question is pure garbage. You can't do spinlocks like that. Or rather, you very much can do them like that, and when you do that you are measuring random latencies and getting nonsensical values, because what you are measuring is "I have a lot of busywork, where all the processes are CPU-bound, and I'm measuring random points of how long the scheduler kept the process in place".
And then you write a blog-post blamings others, not understanding that it's your incorrect code that is garbage, and is giving random garbage values...
You might even see issues like "when I run this as a foreground UI process, I get different numbers than when I run it in the background as a batch process". Cool interesting numbers, aren't they?
No, they aren't cool and interesting at all, you've just created a particularly bad random number generator...
[Y]ou should never ever think that you're clever enough to write your own locking routines.. Because the likelihood is that you aren't (and by that "you" I very much include myself -- we've tweaked all the in-kernel locking over decades, and gone through the simple test-and-set to ticket locks to cacheline-efficient queuing locks, and even people who know what they are doing tend to get it wrong several times).
There's a reason why you can find decades of academic papers on locking. Really. It's hard.
"It really means a lot to me that Linus responded," the blogger wrote later, "even if the response is negative." They replied to Torvalds' 1,500-word post on the same mailing list -- and this time received a 1900-word response arguing "you did locking fundamentally wrong..." The fact is, doing your own locking is hard. You need to really understand the issues, and you need to not over-simplify your model of the world to the point where it isn't actually describing reality any more...
Dealing with reality is hard. It sometimes means that you need to make your mental model for how locking needs to work a lot more complicated...
Someone forgot their politeness training... (Score:3, Funny)
"Sir, thank you for your contribution, I believe you are in error and your demonstration code doesn't yield the correct values due to incorrect assumptions. Please note the following issues with your submission: Thank you."
As opposed to, your work is crap..
Re:Someone forgot their politeness training... (Score:5, Interesting)
Re:Someone forgot their politeness training... (Score:4, Insightful)
Re: (Score:2)
Pretty much. Said blogger isn't protected by any code of conduct.
Re: (Score:3)
I don't know what it says about the world if someone drums up complete shit and then blames the shitty results of that shit on someone else very publicly, and that someone else isn't allowed to call them out on it.
Yeah, vulgarity probably doesn't help, but I didn't feel that Torvalds was out of line in calling garbage code "garbage." He explained why it was garbage, where the Linus of the past would have just said it's fucking shit and the author is an idiot not expound upon why.
It's incremental progress.
Re:Someone forgot their politeness training... (Score:5, Insightful)
I personally would not mind getting feedback like this despite the abusive language and public derision
Better to be blunt and honest than ACs overly-sweet word vomit. Everybody knows you're just faking it and regurgitating empty phrases for the sake of political correctness. You're not being polite by doing it. You're being passive aggressive and dishonest.
Worst of all, people have to cut through all the clutter to figure out what your actual point is because you're too busy thinking about HOW to say something rather than WHAT you're saying.
Re: (Score:2)
What I don't get is how this exchange merits an article on ./
News for Nerds? This topic totally merits an article on /. .
Re: (Score:3)
Stop linking his videos.
Re: (Score:2)
Re:Someone forgot their politeness training... (Score:5, Insightful)
Re: (Score:3)
Re: (Score:2)
Anyone that had followed responses to Linux Kernel critique's by Linus T. would known that this feedback in in the Torvald-o-meter of rudeness scale 1-5 from benign to vicious
Is about 1.
Re: (Score:2)
No, arrogant programmers need to get these smackdowns, shame is the only thing that can counteract narcissism.
You should never ever think that you're clever enough to write your own locking routines
This is really basic. Really basic. When you write your own locking routine, for reasons, know that they probably suck. Just know it. I don't meant, "know it unless you feel lots of warm fuzzies about your code," I mean, know that your own locking routines are crap. Bugs are a force of nature, you can't macho your way past them with self-audits either. If you wrote locking code, it sucked. It doesn'
Re: Someone forgot their politeness training... (Score:3, Insightful)
Re: (Score:3)
A lot of people are consistently correct without being arrogant about it.
Re: (Score:3)
So he wrote a bad spinlock, and then tried to blame it's badness on someone else in a really public manner, and that someone else just tossed it back over the wall calling out the shitty spinlock in an equally public manner.
What's the problem here?
This is why I love him. (Score:5, Interesting)
Re: (Score:2)
Re: (Score:3)
This wasn't even close to being a complete "arsehole" about it. He was rather gentle actually considering that the person making a claim about the Linux scheduler was totally and completely wrong, publicly making claims based on incorrect assumptions and without peer review.
Bad behavior begets bad behavior, and Torvalds has lambasted others publicly for far less. He actually showed some restraint here.
Re: (Score:2)
He wasn't just nice or mean about it, he admitted the Kernel dev's have done it wrong several times and it took them a long time with lots of the right people to get it right (well as right as it is currently) and he's not even sure he could do it correctly without that assistance. That is key advice IMO, he's telling this coder what he's trying to model is very very hard to get right and he doesn't have the experience to do it right so he shouldn't be trying to model it without experienced people to help.
I
Re: (Score:2)
It doesn't matter if the code is bad or not (Score:2)
The simple fact here is that you've got a block of code that is trivial to schedule and work properly on Windows and OSX, and getting it to schedule and work properly in Linux is a giant PITA.
Anyone who thinks that Linux doesn't have scheduling problems is living in a fantasy land. It has had them for almost two decades... and i am convinced it is because people keep making their own net-new schedulers for all these special snowflake situations instead of focusing on making *ONE GOOD SCHEDULER* like every o
He's being so nice (Score:5, Informative)
Re: (Score:3)
The first thing I noticed in TFS is how nice Linus is being (and helpful - seriously).
Within that kernel of observational accurateness, we can distill a single truth: you can be a hardass and scroll back effectively to nicety once in awhile, but you can't be a player's coach, all likable & blowing sunshine, and suddenly become an asshole... folks just don't respond well to it.
Re: (Score:2)
Maybe Linus doesnt' see himself as being senior in quite that way...?
Re:He's being so nice (Score:5, Funny)
He's being so nice
I'm worried; he's clearly sustained a head injury.
Re:He's being so nice (Score:5, Insightful)
Agreed. Speaking as (an unimportant) someone who's faulted Linus' behavior in similar situations in the past - I gotta say this was well and reasonably written. It doesn't hold back regarding the "garbage" code, and it shouldn't; but he never ventures into anything a reasonable person might consider a personal attack.
Re: (Score:2)
Re: (Score:2)
This really is a ton more polite and less insulting than Old Linus, and yet, it still communicates the problem clearly. It's very good.
Welcome back! (Score:2)
Sounds good that after the "code of conduct" fiasco, Linus seems to return to his normal self again.
Re: (Score:2)
Re: (Score:2)
If you're not familiar with those emails beyond the tabloid-style writing about them, in them he'd try to patiently explain to someone who was fairly badly wrong, but very confident in being right that they were wrong and only after he couldn't get trough to them would he lose his temper. Even at that the insults he'd level at them would usually either be restrained or si
Re:Welcome back! (Score:5, Insightful)
Someone should not make a bad and half assed attempt and then claim the world's experts on the subject are wrong like that stupid gamer boy did.
Re:Welcome back! (Score:5, Insightful)
Exactly my thoughts. I must be getting old because I see the youngsters as entitled, arrogant little fucks sometimes. I gotta remind myself that I was sorta the same way when I was young too. I just didn't have the reach that kids these days have because of the Internet.
Mumble mumble, something something, lawn, get off it, mumble mumble...
Re: Welcome back! (Score:3)
Thats not what he did.. (Score:5, Interesting)
He did something wrong (which was admittedly hard), but then went on to make loud and public claims that he had discovered problems with Linux, when in fact he just didnt understand well enough.
Just perhaps before making such noise he should have though 'You know, Linux is developed by a lot of very smart people, and is used for almost all server purposes on the planet, including maximum performance parallel supercomputers where locking is critical, just perhaps I may be wrong here, I better investigate more'
But no, its straight out in public... THAT is the foolish mistake. However, he has possibly learnt a valuable lesson.
Re: (Score:2)
... But no, its straight out in public... ...
Which part of "blogger" did you not understand? (I'm only teasing, but 99.xx% of blog posts seem to suffer from the same problem: getting out SOMETHING regularly to cash in on ads and maybe a "personal brand". The posts are for entertainment, not to inform (even when discounting Dunning-Kruger).)
Comment removed (Score:5, Interesting)
Re: (Score:2)
Hey - he went to DigiPen for 2 years so you know he knows what he's talking about with kernel design! He's just like John Carmack!
Re: (Score:3)
lock-free locking
???
who (Score:2)
>"the blogger wrote later, "even if the response is negative." They replied to Torvalds' 1,500-word post on the same mailing list -- and this time received a 1900-word response"
Who replied? Some group of people? Confusing.
Re: (Score:2)
>"the blogger wrote later, "even if the response is negative." They replied to Torvalds' 1,500-word post on the same mailing list -- and this time received a 1900-word response"
Who replied? Some group of people? Confusing.
Hardly confusing, especially since there's also a direct link to that reply. "They" can be singular [wikipedia.org], too.
Alternatives... (Score:3)
FTA: "Besides that I found that most mutex implementations are really good, that most spinlock implementations are pretty bad, and that the Linux scheduler is OK but far from ideal. The most popular replacement, the MuQSS scheduler has other problems instead. (the Windows scheduler is pretty good though)"
That last part almost made me spit my beer, lol
Re: Alternatives... (Score:5, Interesting)
Re: (Score:2)
the reality of this whole thing is simple... if your code needs a userland spinlock of any kind, you're doing it wrong. period
Re:Alternatives... (Score:4, Interesting)
Isn't the Windows NT scheduler straight from VMS? Ithought it was one of the aspects of the Digital vs. Microsoft lawsuit when David Cutler brought his kernel team from Digital to Microsoft to write the original NT kernel, and a great deal of the kernel from VMS was simply copied wholesale.
Re: (Score:2)
Why? It's amusing to me when people treat OSs like sports teams. "Well, I don't like Windows so everything about Windows must suck ass, the people Microsoft pays to work there from the labor market are far dumber than the people other companies pay to work there!".
It's nonsensical.
And Linus is back baby!!! Who hoo.... (Score:5, Funny)
And Linus is back baby!!! Who hoo....
I can see the sensitivity training kicking in. He didn't refer to the coder as a moron, nitwit, A**hole or tell him to take his spin locks and shove them up his a**.
I am looking forward to the rest of 2020 now...
All new Picard
All new Dr. Who
Top Gun Maverick
Hellfire missiles blowing up terrorists
Crazy global politics
and Linus rants....
However, I truly feel sorry for our human brothers burning in Australia.
"Dealing with reality is hard." (Score:2)
No shit. You don't even have to be doing spinlocks to know that. It's _this close_ (||) to being a tautology.
this explains a lot (Score:2)
Game developers are pretty bad at coding, they can't figure out locking, and they certainely can't figure out coding for multicore architecture.
No consequences (Score:2)
You are sloppy as shit and publically shout loud ass claims.
You are rewarded for your sloppiness and belligerence with hits and views.
You are called out on being sloppy by someone famous.
As a consequence you are rewarded even more.
Locks are complicated (Score:5, Informative)
Locks are complicated. It's really that simple (ha ha). All of the operating system projects have gone through a dozen generations of lock design over the last 30 years because performance depends heavily on all sorts of things. In modern-day, cache-line effects (what we call cache-line ping-ponging between CPUs) are a big deal due to the number of CPU cores that might be involved. Optimal implementations in the days of 4-core and 8-core machines fall flat on their faces as the core count increases.
Even situations that you might think wouldn't be an issue, such as a simple non-contended shared lock, has serious performance consequences on multi-core machines when they are banged on heavily... consequences that can cause latencies in excess of one microsecond from JUST a single NON-CONTENDED atomic increment instruction. That's how bad it can get.
In modern-day kernel programming, spin-locks can only be used safely because the kernel has fine control over the scheduler. Spin-locks in userland tends to be disastrous in the face of any sort of uncontrolled scheduler action. And to even make them work reliably on many-core machines we need backoff mechanisms to reduce the load on the cache coherency busses inside the CPU. Linus is exactly right.
There are other major issues with locks that become dominant on systems with more cores. Shared/Exclusive lock conflict resolution becomes a big problem, so the locking code needs to handle situations where many overlapping shared locks are preventing a single exclusive lock from being taken, or where many serial exclusive locks are preventing one or more shared locks from being taken. Just two examples there.
Even cache-line-friendly queued locks (sequence space locks) have major trade-offs. Stacked locks (that look like mini binary trees) eat up serious amounts of memory and have their own problems.
The general answer to all of this is to develop code to be as lockless as possible through the use of per-cpu (or per-thread) data structures. The design of RCU was one early work-around to the problem (though RCU itself has serious problems, too). Locks cannot be entirely avoided, but real performance is gained only when you are able to code an algorithm where no locks are required in most critical path situations. That's where all the OS projects are moving in modern-day.
-Matt
Re: (Score:2)
So the fix is... (Score:2)
Re: (Score:2)
wanted to make the same comment!
sure the game dev's code might be garbage, but the fact is that his garbage code doesn't cause any problems on windows, while it is an issue on linux.
ofcourse, windows and linux are two different beasts, but it doesn't change the fact that the problem is there.
i can't also imagine this is the only game conversion running into this issue. watching yt videos that compare fps between linux and windows, you'll notice that even native ports sometimes lag behind in fps. is this bec
Stupid is as stupid does (Score:5, Interesting)
The whole post is garbage. The problems with usespace spinlocks are pointed out in the pthread_spin_init(3) manpage and it's clear he knows about that library function as he mentions it in the comments [probablydance.com]. Shame he didn't bother to read the documentation.
And now a load of people with an actual clue are having to refute his nonsense. He should grow a pair and retract the post.
Re: (Score:3)
When I first discovered the random number generator that is latency timing while under the control of SCHED_OTHER, trying to implement primitives as if I were the only process running, I investigated as to why... and it all became immediately clear to me.
That was the very minute that preemption, and how it was accomplished, clicked for me.
It was also about the same time I started growing hair on my balls.
I apparently should have gone in
Are troll swedish? (Score:2)
Linus is such a smart troll ...
But the blogger's post was pure garage (Score:2)
If the blogger's post was a paper it wouldn't have gotten accepted to any decent OS conference. It's full of mistakes and bad assumptions from an inexperienced developer who doesn't realize how wrong he is and decides to blame something else. I mean the guy titled his post and how Bad the Linux Scheduler Really is.
Linus's reply, while a little over the top, really contained some on the mark comments:
I repeat: do not use spinlocks in user space, unless you actually know what you're doing. And be aware that the likelihood that you know what you are doing is basically nil.
Because you should never ever think that you're clever enough to write your own locking routines.
There's a reason why you can find decades of academic papers on locking. Really. It's hard.
The New Friendlier Linus (Score:2)
Re:Is it necessary for tech figureheads (Score:5, Insightful)
I think it depends. Some are just trying to act like "the authority" on subjects because they feel the need to remain at the top of the food-chain. In reality, they fear being toppled by someone who can come along and do what they do more efficiently, cheaper and all around better.
In other cases, like with Torvalds? I think he has the right to be angry since you have a blogger essentially accusing him of approving defective code. With all the tech new sites around who just aggregate content and link back to various blogs, a claim like this could be really damaging to Linux. (A whole lot of people would start questioning the wisdom of using it in business production settings if its scheduler has fundamental flaws.)
Re:Is it necessary for tech figureheads (Score:5, Informative)
+1
Plus, it smacks of blaming a perceived easy target for development problems you can't solve because management asked you to do something really weird and stupid, and then gave you an impossible deadline... ...And then told the public you'd invented 'negative latency'. I might try to be sympathetic to the guy, but... he's making a spurious claim to justify a problem with a service that will always have problems.
Re: (Score:2)
Re: (Score:3)
"I think he has the right to be angry since you have a blogger essentially accusing him of approving defective code."
If you ever tried to deal with the bullshit hassle that is the Linux memory handler, you'd know IMMEDIATELY that Linus is a hypocritical fuck who DID APPROVE DEFECTIVE CODE.
I've worked with the memory subsystem in multiple embedded projects. What do you think is defective with it?
Re: (Score:2)
The whole being able to allocate memory in your code that is not available and then OOM killer kicking in to start killing things. While things are better than they where 10 years ago (mostly because stuff that is critical tends to protect itself from the OOM killer) it is still a stupid design. If there is no free memory then the attempt to allocate it should fail and then I can attempt to do something sensible about it.
Re: (Score:3)
That's not exactly defective code, now is it? It's working that way by design and there is nothing stopping a distro from turning it off (yes, yo can turn it off) before shipping.
Over-committing memory is tunable, and distros ship with it turned on.
Re: (Score:3)
First- you can turn it off, if you're insane.
Second, let's evaluate why it exists.
Let's say you've got a very important root process that has a 1GB file mapped (for god knows why)
Let's say some user has just filled up available memory with some process that is working on some stupid transient shit.
There are no free pages in RAM. Everyone is happy though, because no one needs any pages.
Your root process just read a byte somewhere out of that big mapped file it has.
The
Re: (Score:2)
I remember the mailing list arguments when this code was put in, which is why there is an option to disable it.
But anyone questioning why it's like that should go back and read those arguments in the mailing list. There are very good reasons it's like that, and one of those is if the kernel can't allocate that page it needs it will probably oops the kernel and crash the system. You never want to the kernel to not be able to allocate a page it needs unless you like your system crashing.
Re: (Score:2)
Part of the beauty of the Linux VMM is precisely that it can be tuned for reliable behavior from embedded, to desktop, to server environments.
Re: (Score:2)
It's not defective, and the formula it follows is well documented and defined. Its behavior is deterministic, and it beats the alternative- all the ways a VMM can fail if there are no pages to map.
Re: (Score:3)
Typically, like most "tech experts", they are intensely insecure. Many/most of the people here are the same way, so they don't see it.
Re: (Score:2)
Re: (Score:2)
Thanks, that is a perfect example.
Re:Is it necessary for tech figureheads (Score:5, Insightful)
Re: (Score:2)
Re:Is it necessary for tech figureheads (Score:5, Insightful)
Yes. Because one doesn't successfully go into software development without being extremely nit-picky. And one doesn't become the top figure of an organization without some method of coercing proper behavior. Not all are vitriolic, but that's common. After all, software developers tend to be a bit blind to people's emotional reactions, and you've got to get them to pay attention.
Another factor is that much of the communication is via email in one form or another, and that tends to strip out subtleties in both directions.
Re:Is it necessary for tech figureheads (Score:5, Insightful)
That wasn't even harsh at all, Is it necessary for people like you to be such psychological marshmallows? The stupidity and ignorance that gamer boy had in trying to reinvent the wheel badly is exactly why we have the same types of bugs again and again causing massive security and reliability failures. These self-imagined geniuses need to be smacked down very hard and made an example of.
Re: (Score:2)
Linus is honest. This game programmer is a dishonest fuck.
The world is going down hill because dishonest fucks arent put in their place any longer. For some unknown fucking reason, its now called 'toxic' to be h
Re: (Score:2)
"corrosive"? Really? In what way?
This blog post is like someone claiming to time how fast a car goes, posting their "cool and interesting numbers" about how poorly it performs, when it turns out they were driving in bumper-to-bumper rush-hour traffic. If somebody did that, they'd be pretty much ridiculed... here, since it is a fairly esoteric topic, readers don't recognize the analysis failure. What should the response be? "Your numbers are bad but let me give you a hug?"
Re: (Score:2)
In what way?
In my opinion, derogation hinders most people's curiosity and further drive to improve. There are those who take adversity as strength, but speaking generally, I cannot see that many people would find the appreciation of such challenge.
Who is to say that this guy or anyone has no right to study, investigate, and report whatever they want in the Linux kernel? No one.
Re: (Score:2, Informative)
In my opinion, derogation hinders most people's curiosity and further drive to improve.
Got news for you. Your opinion doesnt matter, snowflake. Your world view hasnt been hardened by cold hard honesty. Your opinion is based on little white lies told to you to spare your valueless feelings.
Re: (Score:3)
Re: (Score:2)
Simply stated, its because they spend a huge amount of time fending off youngsters with something to prove.
That reminds of the old westerns when the storied hero is challenged to a draw by the new comer in town.
I don't expect someone to be a pushed around on their own turf, but I also expect that with age comes a new point-of-view and attempt at civility.
Re:Is it necessary for tech figureheads (Score:5, Insightful)
Is it necessary for tech figureheads to be so corrosive? [...] Does anyone have an input as to why this is?
Being power hungry, insecure, and the need to be precise have been mentioned. I will add exasperation as another possible reason. When you are an expert in a field or topic, one of the things that can get really annoying is the repetitiveness of dealing with folks that think they are experts, but are not. You get the same questions over and over that basically have the same answer: "No, that won't work because you didn't consider xxx." The hard part is not saying the rest of the answer that you really want to include: "... and if you were actually an expert you would have considered xxx. Since you didn't consider xxx and you claim to be an expert, I have no respect for you." Note that this is different from someone who doesn't think they are an expert. If someone admittedly new to the field asks me a question, I don't have a problem and actually enjoy responding. "At first glance, you might think that is a good solution, but xxx can happen and you need to consider that.", but when someone is repeatedly in Dunning Kruger [wikipedia.org] mode, it can become really taxing. Another way of putting it is that it is just a grand example of an RTFM response, with the manual being years of experience. To be fair, even experts can learn new ways and rarely, very rarely, a new solution is found for a problem that is "solved", but most of the time experts have to deal with people who do not know what they do not know, and dealing with such can be exasperating,
Re: (Score:2)
That makes sense. The humdrum of answering the same question over and again to an above novice lay person does seem taxing.
I appreciate your reply.
Re: (Score:3)
This is a HUGE issue. I have been helping people for years in certain types of coding tasks and dealing with actual newbies is rarely a problem. They ask a question and you give an answer along with why and they can often go work with that. The problem is the people that think they are experts. They make the experience so much more frustrating. Their system doesn't work and they are asking for help yet they keep pushing for their solution the whole time and they want you to help them make their solution wor
Re: (Score:3)
Re: (Score:2)
Re: (Score:2)
to be so corrosive? Theo de Raadt, Torvalds, even the communities discussing technology and its issues are filled with corrosive behavior. Does anyone have an input as to why this is?
Because......people. People suck, and some may suck less than others, but the root cause is that people suck.
"Hell is other people." - Jean-Paul Sartre, from No Exit
Re: (Score:2)
They are not corrosive. That is your own wimpy ego speaking. These people are _clear_.
Re: (Score:3, Insightful)
Re: (Score:2)
Re: (Score:2)
Yes, people should think before they act. I must've left an indelible mark on you.
Re: (Score:2)
All I asked was a question I had from an observation. I never asked about "safe spaces" or anything else besides input from others.
Yes, Torvalds can choose how he speaks to whomever. I didn't ask 'can'. I asked 'why'. I have no idea if Torvalds personally wrote the scheduler(s) in question, but I also have no idea why he can't take it on the chin instead of throwing punches if that is the case.
Re: (Score:3)
It is not Ad Hominem what he is doing. Go read the definition.
Re: (Score:2)
Seriously, why can't he avoid ad hominem attacks? It's fine to offer an opinion on someone else's work, but why in the same breath does he feel the need to criticize a person's ability to comprehend a concept?
What specifically did Linus say that you are objecting to? Please quote it or STFU.
Re: (Score:3)
Re: (Score:2)
It is pretty obvious to everyone at this point that Torvalds is a toxic individual.
I don't see that at all. He called the code that someone wrote garbage. Not the person. And when he did so, he provided his reasoning.
At every point where he could respond with criticism AND respect he chooses not to.
Why respect? All that one can expect in such a situation is the lack of disrespect.
Re: (Score:2)
The 1% of people who care should indeed to this. In fact, you are completely free to do so. The fact that people aren't doing it means that very few give a shit about stuff like this and value results more.
As for healthy workplace, if the owner of a company behaves like this nobody can fire him. Pretty much the situation here - he can do whatever he wants because he's got Fuck You stature.
Re: (Score:2)
You're an idiot my friend.
Well, it's plain to see why you don't have a problem with the way he addresses people.