Slashdot Mirror


Linus Chews Up Kernel Maintainer For Introducing Userspace Bug

An anonymous reader points out just how thick a skin it takes to be a kernel developer sometimes, linking to a chain of emails on the Linux Kernel Mailing List in which Linus lets loose on a kernel developer for introducing a change that breaks userspace apps (in this case, PulseAudio). "Shut up, Mauro. And I don't _ever_ want to hear that kind of obvious garbage and idiocy from a kernel maintainer again. Seriously. I'd wait for Rafael's patch to go through you, but I have another error report in my mailbox of all KDE media applications being broken by v3.8-rc1, and I bet it's the same kernel bug. And you've shown yourself to not be competent in this issue, so I'll apply it directly and immediately myself. WE DO NOT BREAK USERSPACE! Seriously. How hard is this rule to understand? We particularly don't break user space with TOTAL CRAP. I'm angry, because your whole email was so _horribly_ wrong, and the patch that broke things was so obviously crap. ... The fact that you then try to make *excuses* for breaking user space, and blaming some external program that *used* to work, is just shameful. It's not how we work," writes Linus, and that's just the part we can print. Maybe it's a good thing, but there's certainly no handholding when it comes to changes to the heart of Linux.

30 of 1,051 comments (clear)

  1. Arsehole by GrahamCox · · Score: 5, Insightful

    Winning friends and influencing people since 1983.

    Seriously, who'd put up with this crap? There are nicer ways to make ones way through life.

    1. Re:Arsehole by Anonymous Coward · · Score: 5, Insightful

      I wish my boss would show the same concern for the quality of our software, and scream at the programmers that break it every day. Unfortunately it doesn't happen, and other programmers end up fixing the broken code (and quietly grumbling) because otherwise they would not be able to do their jobs.

      Sometimes harsh words can send a message better than a general "please check your code before you commit".

    2. Re:Arsehole by fredprado · · Score: 5, Insightful

      He isn't trying to make friends. He is trying to manage the efforts to implement a particularly complex piece of software, whilst hearing bullshit from one of his developers who made a very big mistake.

      Everybody makes mistakes, but the right posture when it was obviously your fault is to take the blame and learn from them, not to try and make excuses.

    3. Re:Arsehole by jjohnson · · Score: 5, Insightful

      Of course, neither harsh words nor general "please check" encomiums are as good as calmly, straightforwardly stating "we do it this specific way, you did it that way instead, as a result we have this undesirable result. Do it again, correctly. In the future, check X, Y and Z to ensure that you don't repeat this mistake."

      Only in the socially retarded world of /. is this sort of behaviour lauded because the best behaviour that I described above seems too goddamned difficult to manage.

      --
      Anyone who loves or hates any language, platform, or manufacturer, doesn't know what they're talking about.
    4. Re:Arsehole by phantomfive · · Score: 5, Insightful

      I think the point is, Linus would rather the guy not do any work than to continue to produce such garbage code. He would rather make every change himself, than to rely on fellow-programmers who will only make things worse.

      And that's understandable. Bad programmers will cost you more time than they save.

      --
      "First they came for the slanderers and i said nothing."
    5. Re:Arsehole by Hal_Porter · · Score: 5, Insightful

      How technical do I need to be before I can get away with telling people to "SHUT THE FUCK UP!". Script monkey? OS Kernel developer?

      Actually it has nothing to do with technical ability. You can tell people to shut the fuck up if you're not in a position to get fired when your boss finds out. I.e. you own the company or, like Linus, you are Benevolent Dictator For Life on some open source project.

      Of course - as Ulrich Drepper found out - even Benevolent Dictators For Life can look out of the window and see that the peasants are tearing down their statues, Ceausescu style. And most people reading this would get shitcanned from their sysadmin job a lot quicker than that for not jumping when their boss tells them.

      Really the tech world would be a lot more pleasant if people didn't conflate rudeness and technical competence. Most people seem to master the rudeness, neglect the technical competence and then wonder why they are undervalued.

      --
      echo -e 'global _start\n _start:\n mov eax, 2\n int 80h\n jmp _start' > a.asm; nasm a.asm -f elf; ld a.o -o a;
    6. Re:Arsehole by BasilBrush · · Score: 5, Insightful

      I think the point is, Linus would rather the guy not do any work than to continue to produce such garbage code. He would rather make every change himself, than to rely on fellow-programmers who will only make things worse.

      There's a term for people with attitudes like this; who express them by public tantrums: A Prima Donna.

    7. Re:Arsehole by Austerity+Empowers · · Score: 5, Insightful

      His attitude is bullshit, his intent is not.

      That said, it's really not clear why this was on a kernel dev mailing list and not in 1:1 emails. One would hope this sort of public thrashing is the last result of frustrated people.

    8. Re:Arsehole by phantomfive · · Score: 5, Insightful

      That said, it's really not clear why this was on a kernel dev mailing list and not in 1:1 emails.

      So that anyone else who thinks of making a similar mistake will think twice.

      --
      "First they came for the slanderers and i said nothing."
    9. Re:Arsehole by jamesh · · Score: 5, Insightful

      I think the point is, Linus would rather the guy not do any work than to continue to produce such garbage code. He would rather make every change himself, than to rely on fellow-programmers who will only make things worse.

      There's a term for people with attitudes like this; who express them by public tantrums: A Prima Donna.

      Ok, I'll bite: How is an email in a private mailing list a "public tantrum"?

      LKML is hardly a "private mailing list", given that anyone can read it, and anyone can subscribe to it. There's even a link to a public archive in TFS.

    10. Re:Arsehole by phantomfive · · Score: 5, Insightful

      And his attitude isn't that unusual for men in charge. Gates has done it as has Jobs and Ballmer.

      Yeah, actually.

      And getting it right is surprisingly difficult. His primary goal is to communicate, "you did something incredibly stupid, and are in danger of getting kicked out of the team."

      How do you communicate something like that without sounding rude? It is possible, and if you can do it then you might have a future as a diplomat, but not many people can do it. Developing those skills while simultaneously developing the skills to be a kernel programming lead is not very common.

      --
      "First they came for the slanderers and i said nothing."
    11. Re:Arsehole by dbIII · · Score: 5, Insightful

      Sometimes polite doesn't work. You don't tell a welder that their weld is just not quite right and to please do it again if it's not too much trouble. You tell them it's fucked and to grind it out and do it again before everything falls down and kills someone. That's an extreme case, but it's still a good example to show that polite doesn't always get a message across.
      From the summary it appears to be at the end of a string of failed communication, in which case being blunt can be very appropriate.

    12. Re:Arsehole by tftp · · Score: 5, Insightful

      You don't tell a welder that their weld is just not quite right and to please do it again if it's not too much trouble. You tell them it's fucked and to grind it out and do it again before everything falls down and kills someone.

      I'm not sure how you manage your welders, but I would go about like this:

      "Bill, this bead is too shallow. It won't bear the load. The bottom of the weld is cold, and there is no metal there. You will have to grind it out and redo. This weld will be inspected with X-ray to make sure you do it right this time. We will have to pay you overtime, by law, for this. But if you do it again there will be no overtime - you will get your final check instead. The reason is that if these welds fail someone will be killed. It is that important. Please do your best."

      This explains the problem, explains what to do to correct, and also spells out the consequences for continued bad work. It ends with an encouragement; you never want to end the conversation with a threat. But the overall content of the message is exactly the same as yours, and the welder will not feel offended. He will feel ashamed of his poor work. It won't make him happy, but by the end of the day he will know that I was right - actually, as soon as he grinds his superficial bead away and exposes the unwelded groove.

      And if in my opinion the guy is hopeless I will simply summon HR to have him dismissed right away. There is no need to offend him by telling him that he is an idiot. He may well be, but it's not in my interest to infuriate people. I simply don't have a use of him anymore. Nothing personal.

      In that aspect, try to not enrage your welders when you chew them up at a height of 100 storeys. It's a long fall to the ground, and people do see red when they are angry.

    13. Re:Arsehole by fredprado · · Score: 5, Insightful

      And then Bill comes and says:

      "It is not my fault boss, the beads are totally fine, the fault is that they shouldn't be putting the load where they always did, and where it worked before, they should put the load now in this nice little place I arbitrarily chose. Anywhere else the thing will fall apart, but it is their fault."

  2. I could kiss the guy... by Qybix · · Score: 5, Insightful

    I am so tempted to kiss the guy! Linux can't have this type of _OBVIOUS_ audio sabotage at the kernel level if we expect game developers to ever make their products available on Linux. Linus NEEDS to reign this in, we just can't afford it. He is 110% right.

    Keep the helm firm, man! That's exactly what we need!

    Qybix

    --
    Qybix ----- I do not have a belief system; I'm an Anti-theist and proud of it! Saying that not believing in anything i
  3. Re:Not the bug... by krinderlin · · Score: 5, Insightful

    That was my reading exactly. As a programmer, I've had to condition my responses to bug reports to move from, "What?! It's totally your fault!" to, "Let me investigate this on my end." It became fairly obvious from the get go that the patch made some changes that were overlooked in the patch. The patch commit message failed to give any reason or justification for the change (which was a 1 line change, possibly in a sea of other changes). Furthermore, the automated testing application that the patch submitter was using had a bug in it.

    It's likely the testing apparatus said, "OMG! THIS ERROR VALUE IS WRONG!" Then, the submitter corrected it to fit the bad test. Honestly, while Rafael signed off on it, it would appear the submitter set him up the bomb, so to speak. Who would make a change like that without further investigation and then submit it is a serious question. I would hope the patch submitter is placed under some additional scrutiny.

    All in all, Rafael took it in stride in his response. He also explained further, but appears to have capitulated that his initial reaction was wrong and that he should have fixed first, asked "Why are you using that, anyway?" later. Also, he should have never stated that, "So, on a first glance, this doesn't sound like a regression, but, instead, it looks that pulseaudio/tumbleweed has some serious bugs and/or regressions." It's quite obvious that changing not only what error code is returned but returning one that was literally impossible without telling anyone is a Bad Thing(TM).

    As for Linus's style of management, I don't know. I mean, Rafael was way, way, way out of line with that statement I quoted. He really failed to grasp the situation, even after it was clearly spelled out for him.

    All in all, I think he's learned his lesson and will be better for it. He seems to have taken it well enough, at least publicly. :-)

  4. Dude needs to read Dale Carnegie... by Anonymous Coward · · Score: 5, Insightful

    I wouldn't speak to anyone that way unless I never wanted to see them again. Shaming someone in public like this is a way to not only get them to quit, but to make a permanent enemy out of them.

    What this tells me is that Linus is better suited to be a cult leader than a manager of any kind.

  5. Shit Happens by MacGyver2210 · · Score: 5, Insightful

    Sometimes shit happens. Sorry for that.

    Cheers,
    Mauro

    Wrong. Answer.

    --
    If the only way you can accept an assertion is by faith, then you are conceding that it can't be taken on its own merits
  6. Re:Still.... by hairyfeet · · Score: 5, Insightful

    Celeb or not I'd tell Torvalds to kiss my ass. I thought maybe that was at the end of a conversation...nope, the guy asks a simple question , one that would have taken Torvalds all of 30 seconds to explain like a rational human being, and instead he goes instantly to 11 on the douchebag scale.

    I don't give a flying fuck WHO it is, be it Torvalds or Ballmer or Cook or Ellison if someone acts like a total fucking douchebag they should be called out for it and I'm calling him out, Linus Torvalds you sir are a douchebag. you could have solved the whole fucking thing in under 30 seconds by simply explaining why "it must be thus" but instead just acted like a giant flaming prick, it was completely uncalled for, the other guy was acting complete civil and politely, therefor the asshole of the week award should be given to Torvalds for flying so completely off the handle when there was zero point in it.

    --
    ACs don't waste your time replying, your posts are never seen by me.
  7. Be fair by melted · · Score: 5, Insightful

    The guy deals with A LOT of bullshit on a daily basis, and this was a BS patch anyway. That would be the end of it if the dude didn't start coming up with excuses. If you know you're wrong, fucking say so and make things right.

    1. Re:Be fair by BitZtream · · Score: 5, Insightful

      Did you read the thread? I don't think you did. He started off by telling the person reporting the bug that it was a user space app problem (pulse audio).

      This is wrong for several reasons.

      First and foremost, it is the unholiest of unholy to make a kernel change to an API that results in userland apps breaking.

      Second, Linus's policy is that of the above, never is a kernel change allowed to break a userland app.

      Third, the way he changed the code was in no way what so ever acceptable. He change the error code for an ioctl to NOENT, i.e. file not found ... ioctl's work on open files, its not possible to have a file not found, you're already past the point where you would get that response as you've already opened the file.

      It was a shitty patch AND the patcher blamed someone else AGAINST POLICY for his own stupid mistake. THAT is why Linus tore him a new one.

      He didn't get reemed for just fucking up, he got reemed for fucking up in multiple ways and blaming it on someone else, then when that was pointed out, he tried to respond with 'well other people do it' as if that is an acceptable response as well.

      --
      Persistent Volume manager for Kubernetes - https://github.com/dwimsey/openshift-pvmanager
    2. Re:Be fair by oatworm · · Score: 5, Insightful

      In my experience (and I do do development in environments where this comes up frequently), it is not at all unusual for applications to either rely on buggy behavior of another piece of code, or to make unwarranted assumptions about how another piece of code works, that happens to be valid under some circumstances but not others.

      Which is why Linus' policy is that, when the choice is between userland compatibility and better adherence to theoretical documentation of the kernel interface, tie goes to userland compatibility. This is smart - Linux already has enough issues with userland apps breaking backwards compatibility to scratch itches that nobody really has (see GNOME 3, the entire audio stack, etc.); if the kernel is disciplined, at least, it keeps the whole environment from turning into a bug-ridden tar pit.

      As for Linus' attitude, well, I have to agree with Linus on this one. Fix the mistake first, either by removing the patch that broke everything or quickly implementing a fix, then ask questions. The first rule of kernel development should always be "Do No Harm". If you're in charge of some part of kernel development and you find yourself breaking that rule, you need to un-break it ASAP, then assess how you found yourself breaking it in the first place. Unfortunately, Mauro wasn't grasping that - he was too busy asking "reasonable questions" to undo the damage that his commit did when his first priority should have been to stabilize the kernel. Don't get me wrong, Mauro's questions are important and they do need to be answered, but only after userland is back to the condition he found it before the commit. And not until then. And *certainly* not with the mainline kernel.

  8. Re:Still.... by Anonymous Coward · · Score: 5, Insightful

    Just like you could have made your point without saying: douchebag, ass, giant flaming prick, and asshole.

  9. Re:Still.... by blind+biker · · Score: 5, Insightful

    I don't give a flying fuck WHO it is, be it Torvalds or Ballmer or Cook or Ellison if someone acts like a total fucking douchebag they should be called out for it and I'm calling him out, Linus Torvalds you sir are a douchebag. you could have solved the whole fucking thing in under 30 seconds by simply explaining why "it must be thus" but instead just acted like a giant flaming prick, it was completely uncalled for, the other guy was acting complete civil and politely, therefor the asshole of the week award should be given to Torvalds for flying so completely off the handle when there was zero point in it.

    Actually, the other guy, while being incompetent, was very manipulative, and it worked - with people like you. To be manipulative like that you have to have a lot of social intelligence, and that helps you to navigate situations in which your incompetence surfaces. Some people have little patience with such manipulations and fakery.

    --
    "The agriculture ministry is not in charge of Gundam" - Japanese ministry official.
  10. Re:Still.... by Sir_Sri · · Score: 5, Insightful

    Or it looks like someone had a temper tantrum because he's a celebrity and doesn't have to be decent to other people.

    And the thing is, that happens. A lot. Even at microsoft. "That's the stupidest fucking thing I've ever heard!" - Bill Gates. And that was in Paul Allens book, and apparently an oft used phrase.

    Linux lives and breathes on its contributors, if you make too many public scenes you can end up with a lot of important people and companies saying it's not worth it to contribute to, or it's not worth it to contribute to under Torvalds, that would be a very ugly mess for the entire industry. Worse still is if this sort of behaviour sets the tone for everyone else trying to be the next Linus, and they try to copy his to behavior (and that definitely happened at microsoft) and you end up with an organization full of asshole managers who no one wants to work for. At least microsoft can hold out the carrot of a fat paycheck to put up with it, Linux relies on people volunteering to help.

    Granted, it's not really a shock that Torvalds likes to... speak his mind. That's part of his thing. Still, it poses a lot of questions about the sort of person who's going to be around to succeed him if he gets hit by a bus so to speak. Certainly Tim Cook and Steve Ballmer have not been able to find the right magic replacing their more famous bosses, and one would hope Linux manages better than Apple and MS have, admittedly, those jobs are completely different.

  11. Re:Still.... by tezbobobo · · Score: 5, Insightful

    I don't know why you were marked as a troll. I would have the same reaction as you. Doing something stupid is not a free ticket for people to be rude. Linus was unprofessional.

  12. It'll make Linux better by Taco+Cowboy · · Score: 5, Insightful

    ...and then it makes Linux as an operating system -- and everything that runs on it and depends on it, look bad...

    While I agree that this incident does put Linux on the front pages in part of the Net, I seriously doubt the "look bad" part.

    In fact, imho, this incident will generate more positive than negative for Linux.

    Admins and users that are still sitting on the fence would take note, that Linus just don't take fuck as an excuse - and if anyone dares to fuck up like that fella he will get a public tongue lashing - and the top priority of Linux is to *NOT INTRODUCE ANY USERSPACE BUG*.

    --
    Muchas Gracias, Señor Edward Snowden !
  13. Re:Still.... by MichaelKristopeitDad · · Score: 5, Insightful

    Doing something stupid is not a free ticket for people to be rude.

    Doing something stupid doesn't. Doing something stupid, not apologizong for it, failing to fix it in a timely manner and then blaming the stupidity on other people's code - when kernel policy clearly state it's YOUR responsibility - is much closer to the free ticket, wouldn't you say?

  14. Re:Still.... by philip.paradis · · Score: 5, Insightful

    Or it looks like someone had a temper tantrum because he's a celebrity and doesn't have to be decent to other people.

    He cares more about the product being right than other peoples' opinion of him.

    And the thing is, that happens. A lot. Even at microsoft. "That's the stupidest fucking thing I've ever heard!" - Bill Gates. And that was in Paul Allens book, and apparently an oft used phrase.

    Sometimes the truth hurts.

    Linux lives and breathes on its contributors, if you make too many public scenes you can end up with a lot of important people and companies saying it's not worth it to contribute to, or it's not worth it to contribute to under Torvalds, that would be a very ugly mess for the entire industry.

    Nope. Linus has been Linus his whole life. This "story" isn't anything new. Oddly enough, Linux keeps marching onward, with plenty of contributors who are both volunteers and paid by various corporations to contribute work.

    Worse still is if this sort of behaviour sets the tone for everyone else trying to be the next Linus, and they try to copy his to behavior (and that definitely happened at microsoft) and you end up with an organization full of asshole managers who no one wants to work for.

    Again, the truth hurts. Projects like these don't tolerate stupidity well, especially given the fact that it's a community effort and there has to be a lot of lack of testing and communication on the part of the responsible party when something breaks like this. The price to be paid is twofold: (1) very public expressions of the harm caused by such issues, and (2) potential relief from duties related to the issue at hand, whether temporary or permanent in nature.

    Granted, it's not really a shock that Torvalds likes to... speak his mind. That's part of his thing. Still, it poses a lot of questions about the sort of person who's going to be around to succeed him if he gets hit by a bus so to speak. Certainly Tim Cook and Steve Ballmer have not been able to find the right magic replacing their more famous bosses, and one would hope Linux manages better than Apple and MS have, admittedly, those jobs are completely different.

    Step right up if you can do it better or know others who can. It takes strong leadership founded on the idea that others follow you primarily for you technical ability, and secondarily for your "soft skills" to manage a technical project of this scale. Sometimes people have problems replacing their famous bosses because while the old boss may have been widely regarded as an asshole, he was an effective asshole, and numbers (whether measured in uptime, lack of showstopping functional bugs, level of attention to security issues, or profit per quarter) don't lie.

    All things considered, I saw far worse than this in my prior military service (Navy submarine force, ET-COM) in cases where somebody did something stupid that resulted in a systems failure, and oddly enough some aspects of this whole deal remind me a bit of organizational units in the services that pride themselves on putting job performance and technical ability first. Those who get butthurt about being dressed down are free to find something else to do with their time.

    --
    Write failed: Broken pipe
  15. Re:Still.... by Rich0 · · Score: 5, Insightful

    So simply being a nice person is now manipulative because it makes people like you? Do you even realise what you're saying?

    There is nothing nice about causing harm for no reason to other people (users in this case) while smiling and talking politely.

    If somebody rear-ends my car at a light, they have caused me harm. Do I therefore get out of my car and start screaming at him to "punish" him for his sins? No, I simply call the police to have a report created, and exchange insurance info. It will no doubt cost the guy money, and his insurance company will no doubt give him incentive not to repeat the incident. But, the fact is that it was an accident - that is why we call them accidents.

    People mess up - it is a defining characteristic of humanity. Sometimes they even mess up and don't realize that they messed up. If you can't deal with this, then go do the rest of the human race a favor and have yourself committed.

    And as far as "for no reason" goes, read the entire thread. There actually was a reason for the patch, and the reason was a good one. The implementation was incorrect, but the intent was not malicious.