Catch up on stories from the past week (and beyond) at the Slashdot story archive

 



Forgot your password?
typodupeerror
×
Open Source Linux

How New, Polite Linus Torvalds Points Out Bad Kernel Code (phoronix.com) 370

Linus Torvalds "has shown already for the new Linux 4.20~5.0 cycle he isn't relaxing his standards but is communicating better when it comes to bringing up coding," reports Phoronix, adding "So far it looks like Linus' brief retreat is paying off with still addressing code quality issues -- and not blatantly accepting new code into the kernel as some feared -- but in doing so in a professional manner compared to his past manner of exclaiming himself over capitalized sentences and profanity that at time put him at odds with some in the Linux kernel community."

AmiMoJo quotes their report: Last Saturday he took issue with the HID pull request and its introduction of the BigBen game controller driver that was introduced: the developer enabled this new driver by default. Linus Torvalds has always frowned upon random new drivers being enabled by default in the kernel configuration driver. [H]e still voiced his opinion over this driver's default "Y" build configuration, but did so in a more professional manner than he has done in the past:

We do *not* enable new random drivers by default. And we most *definitely* don't do it when they are odd-ball ones that most people have never heard of.

Yet the new "BigBen Interactive" driver that was added this merge window did exactly that.

Just don't do it.

Yes, yes, every developer always thinks that _their_ driver is so special and so magically important that it should be enabled by default. But no. When we have thousands of drivers, we don't randomly pick one new driver to be enabled by default just because some developer thinks it is special. It's not.... Please don't do things like this.

Phoronix also describes another "kernel oops" testing Torvalds' patience, in which Linus responded tactfully that "What makes me *very* unhappy about this is that if I'm right, I think it means that code was literally not tested at all by anybody who didn't have one of the entries in that list."
This discussion has been archived. No new comments can be posted.

How New, Polite Linus Torvalds Points Out Bad Kernel Code

Comments Filter:
  • by elrous0 ( 869638 ) on Saturday November 03, 2018 @02:37PM (#57586648)

    That should be impossible with just a few written words, right?

    • by Anonymous Coward on Saturday November 03, 2018 @02:44PM (#57586682)

      On the contrary, it just goes to show how unnecessary his over the top style was. The irritation comes through just as clearly, but without being overtly offensive and hostile.

      • Re: (Score:3, Insightful)

        by Anonymous Coward

        One can only take offense.. It's not possible to give it.

        • by sjames ( 1099 )

          Actually, it can be given. For example, if I were to pee on you while you're sitting on a bench minding your own business, most people would reasonably say I gave offense.

          • And yet the Dahli Lama would not take the offense you tried to force upon him.
            • by sjames ( 1099 )

              Don't be so sure. He might not overreact, but the offense will be there.

              • Don't be so sure. He might not overreact, but the offense will be there.

                Exactly. We live in an age where those who are offended the most easily have the power to get rid of those who offend them.

          • Actually, it can be given. For example, if I were to pee on you while you're sitting on a bench minding your own business, most people would reasonably say I gave offense.

            Unless you want to be peed on. Rule 34.

      • by gweihir ( 88907 ) on Saturday November 03, 2018 @03:33PM (#57586886)

        We will see what happens when the first self-important moron does not get it.

      • by Anonymous Coward

        If you think his usual style caused tears, wait until he absolutely demolishes someone "professionally". That's what I liked about the cursing: It was honest, direct and expressed emotions instead of suppressing them. He's going to be a lot more vicious and it's going to be a lot harder for some people to understand when and where they crossed a line. Some people like big businesses because abhor the lack of written down rules at startups. Most people however detest HR, deep hierarchies and inflexible rules

      • On the contrary, it just goes to show how unnecessary his over the top style was. The irritation comes through just as clearly, but without being overtly offensive and hostile.

        I know more than a few people who would still take offense at those statements.

    • by Anonymous Coward on Saturday November 03, 2018 @03:36PM (#57586902)

      I don't see how that is any more polite than before. Professional way to say the same would have been:
      - We have thousands of drivers so we can't enable all of them by default. This is especially true for new drivers that have not been properly tested yet and which are not known or used by a large amount of people. Please be careful about this in the future so we don't accidentally cause problems for our users.

      Mind you, I don't want Linus to change the way he speaks. I was really happy when my code was rejected by him with harsh words.It made me feel special.

      Those of you who don't understand how I feel, work with something for a whole week. Then send it to someone who would really need your work, but who you know won't reply to you nor use your work in any way. That is what kills spirit and makes you feel rejected, not harsh words that tell that the person did actually spend time investigating your work and even was kind enough to tell you what is wrong with it.

      • by 93 Escort Wagon ( 326346 ) on Saturday November 03, 2018 @04:34PM (#57587138)

        I don't see how that is any more polite than before.

        If you honestly can’t see the difference, you haven’t been paying attention.

        There are many ways this differs... but it boils down to this: Linus’ words focused on the code, not the coder. He still got his point across regarding why it was a bad decision, and he let people know he expected people to not do this for their own little corners of the kernel.

      • We have thousands of drivers so we can't enable all of them by default. This is especially true for new drivers that have not been properly tested yet and which are not known or used by a large amount of people. Please be careful about this in the future so we don't accidentally cause problems for our users.

        I think that what your version says is different than what Linus said. He didn't say be careful; he said don't do it.

        Your version also has more explanation that isn't, or shouldn't, be necessary for

      • by Ol Olsoc ( 1175323 ) on Saturday November 03, 2018 @09:21PM (#57588036)

        I don't see how that is any more polite than before. Professional way to say the same would have been: - We have thousands of drivers so we can't enable all of them by default. This is especially true for new drivers that have not been properly tested yet and which are not known or used by a large amount of people. Please be careful about this in the future so we don't accidentally cause problems for our users.

        The problem is that there are a significant number of people who would take umbrage at what you wrote. Allow me to be the worker you just said that to..... Are you accusing me of incompetence? You're saying I'm careless? You're saying that I'm trying to write bad drivers? Then that evening, social media will hear all about you being a jerk and an asshole, possibly being a "something something" bigot.

        I've worked in groups who to our dismay, got one of these wonderful snowflakes on a few occasions. Eventually they have everyone walking on eggshells in order not to offend them, as the focus of the group becomes as much not upsetting the snowflake as it is performing the task at hand.

        After figuring out that the snowflake simply won't take telling, I would move anyone showing signs of being too easily insulted away from us quickly, and usually they made enough trouble in most positions that the next downturn cycle they were gone.

        • Why would this be a problem?

          The goal is not to act in such a way that it avoids the possibility for anyone to be offended by it. The goal is to be polite enough that most people would shrug and say, well that person is just overreacting. Linus was a long way from that balance before.

          • Why would this be a problem?

            The goal is not to act in such a way that it avoids the possibility for anyone to be offended by it. The goal is to be polite enough that most people would shrug and say, well that person is just overreacting. Linus was a long way from that balance before.

            Oh sheesh. Perhaps my 30+ years of experience have been all wrong, but the easily offended crowd do not get any less offended when they are appeased.

            Been there, tried it, found out that eventually the color of the office panelling and the brand of coffee at meetings was enough to set them off.

            And I disagree. When the easily offended are in a group, the goal damn well does become not offending. People become too busy parsing their words that after the second second guessing, they just decide to keep the

      • I don't see how that is any more polite than before.

        Let me educate you on what he said in the past:

        Mauro, SHUT THE FUCK UP!
        "It's a bug alright -- in the kernel. How long have you been a maintainer? And you *still* haven't learnt the first rule of kernel maintenance?"
        "Shut up, Mauro. And I don't _ever_ want to hear that kind of obvious garbage and idiocy from a kernel maintainer again. Seriously. Fix your fucking 'compliance tool,' because it is obviously broken. And fix your approach to kernel programming."

        So: No expletives, no attacks on the developer, and

    • Poor guy, bottling in all that anger. He may cut his lifespan short by 10 years if he has to deal with a lot of incompetent code submitters. And then picture some of those morons mouthing off because Linux responded so blandly. All so a bunch of sensitive snowflakes feelings aren't hurt.

  • #savelinus (Score:5, Funny)

    by NicknameUnavailable ( 4134147 ) on Saturday November 03, 2018 @02:39PM (#57586658)
    I miss the old Linus.
    • by Bruce Perens ( 3872 ) <bruce@perens.com> on Saturday November 03, 2018 @06:33PM (#57587522) Homepage Journal
      Fork him then. Create a web site with "old Linus" responses to every email he sends to the kernel list. Link them appropriately. Make a disclaimer that it's sarcasm. It should be quite a hoot :-)
      • Actual text (Score:5, Funny)

        by thegarbz ( 1787294 ) on Sunday November 04, 2018 @03:55AM (#57588858)

        Oh fuck off. We do *not* enable new random drivers by default. And we most *definitely* don't do it when they are odd-ball ones that most people have never heard of.

        Yet the new "BigBen Interactive" driver that was added this merge window did exactly that.

        Just don't fucking do it.

        Yes, yes, you always thinks that your driver is so special and so magically important that it should be enabled by default. But no. When we have thousands of drivers, we don't randomly pick one new driver to be enabled by default just because some developer thinks they are special. You're not. Don't fucking do things like this.

        • Re: (Score:2, Informative)

          by Anonymous Coward

          I know we don't read TFA, but there is an example of how Linus dealt with almost the exact same situation before:

          You add new drivers and then default them to "on".

          THAT IS COMPLETELY UNACCEPTABLE.

          I don't know why I have to say this every single merge window, but let's do it one more time:

          As a developer, you think _your_ driver or feature is the most important thing ever, and you have the hardware.

          AND ALMOST NOBODY ELSE CARES.

          Read it and weep. Unless your hardware is completely ubiquitous, it damn well should

  • That's the stuff that matters.

    • by hey! ( 33014 )

      That's not the issue at all. The question is whether they should enabled by default. The kernel development policy is not to do that with new drivers, unless there is some compelling reason to do so.

      The driver in question might be the finest driver ever written, but the policy exists because the kernel development team is huge, and if everybody did things their own way the result would be chaos.

  • SERENITY NOW! (Score:4, Informative)

    by Anonymous Coward on Saturday November 03, 2018 @03:08PM (#57586776)

    Compare 2010:
    https://lkml.org/lkml/2010/5/20/218 [lkml.org]

    This is just unbelievable SH*T: ...
    First it says "only ask if EMBEDDED", and then it says "default to Y if
    not embedded".

    Why? Why the hell did somebody decide that everybody and their pet dog
    should get that totally uninteresting driver, whether they want it or not?

    I realize that every single developer thinks that their driver is the most
    important thing in the universe, but come on! This kind of thing is
    totally inappropriate, and to make matters worse, it looks like there are
    a few commits that won't even compile because the whole file wasn't even
    added until later.
    And this piece of shit was made _mandatory_?

    Get a grip, people. I'm not pulling idiotic crap like this. Some quality
    control before you ask me to pull, for chissake!

    2018:

    We do *not* enable new random drivers by default. And we most *definitely* don't do it when they are odd-ball ones that most people have never heard of.

    Yet the new "BigBen Interactive" driver that was added this merge window did exactly that.

    Just don't do it.

    Yes, yes, every developer always thinks that _their_ driver is so special and so magically important that it should be enabled by default. But no. When we have thousands of drivers, we don't randomly pick one new driver to be enabled by default just because some developer thinks it is special. It's not.... Please don't do things like this.

    This is clearly developer behavior which Linus just HATES, but now he has to be polite in expressing his disdain for it.

    I expect Linus to be committed to the looney bin in a matter of months.

  • Still not right (Score:5, Interesting)

    by Anonymous Coward on Saturday November 03, 2018 @03:13PM (#57586794)

    If you want a healthy productive community, the correct way to handle repeated violations of policy is to document the policy and direct people to it when its violated.

    If instead he said, you have violated our driver enablement policy, documented at link, then everyone one involved in the offending change making it in would have a much more pleasant time correcting their behavior and also have the opportunity to learn about such rules in advance easier.

    In the software industry, it is standard practice to take repeat issues like this and document then in your best practices document along with examples and justifications. Its better for everyone involved (less work and stress for people like Linus, less being singled out and less feeling like they are being targeted by the contributors).

    Personally I find that the canonical policy documentation is in Linus's head to be a bigger issue than his attitude. There is more to being fostering a positive developer community than not speaking in a rude way: you actually need to be inclusive/transparent when it comes to forming the policies, and in this case having a written best practices document everyone can read and discuss when they have disagreements rather than suffer a personal attack for an authority figure would make this a much better experience for most people.

    At least that's my personal take coming from from the big company cooperate software engineering environment. I've dealt with this kind of feedback before, and it always feels like "my arbitrary opinion that you don't have access to says you should stop being wrong". I like it much better when a perceived mistake is instead address with the question of how we can help future people from making the mistake (ex: new documentation) or how I can help myself from making similar mistakes (ex: direct me to existing documentation). Its the difference of attitude between you messed up, vs how can we learn from this to improve the system so less people fall into the same trap you did.

    • by Anonymous Coward

      Well his arbitrary opinion has been proven correct over decades. When he finally drops dead you can debate things with his successor all you like.

    • Which part of "Don't be a moron by setting your Kconfig option to default to Y for obscure and non-critical drivers" do you not understand? How would abandoning meritocracy for corpratocracy help?
    • by Kjella ( 173770 )

      If you want a healthy productive community, the correct way to handle repeated violations of policy is to document the policy and direct people to it when its violated.

      They process is well documented [kernel.org] and on the checklist here [kernel.org] it's #6 (emphasis mine):

      Any new or modified CONFIG options do not muck up the config menu and default to off unless they meet the exception criteria documented in Documentation/kbuild/kconfig-language.txt Menu attributes: default value.

      As usual Linus is ranting because people didn't read the basics, if somebody claimed ignorance I'm sure he'd provide the links but they're not exactly hard to find.

  • This seems like a case study that can determine whether it is more important to be right or be polite.

    So, was he right? (check yes or no)

    Did he discriminate against someone? (check yes or no)

    Did he sexually harass someone? (check yes or no)

    Was he polite? (check yes or no)

    One of these questions does not seem nearly as important as the others. Can you guess which it is?

    • by gweihir ( 88907 )

      In engineering, being right is essential and trumps everything else. Being polite is professional but optional. If being polite is placed on the same level as (or above) being right, the project is essentially dead.

      • In engineering, being right is essential and trumps everything else

        Spoken like an armchair engineer.

        Woe betide the engineer who ignores human factors.

        Being polite is professional but optional.

        Generally no. If you get your ass fired for being an insufferable asshole, it doesn't matter how right you are because no one will hear your rightness. Like a poor engineer you ignored the human factors.

        • by gweihir ( 88907 )

          In engineering, being right is essential and trumps everything else

          Spoken like an armchair engineer.

          You wish.

          Woe betide the engineer who ignores human factors.

          You are the one saying anything about ignoring human factors. Makes you the amateur here. There are different ways to handle human factors and there are different human factors. Communication with other engineers is vastly different to communicating with users and that is vastly different to designing for users.

          Being polite is professional but optional.

          Generally no. If you get your ass fired for being an insufferable asshole, it doesn't matter how right you are because no one will hear your rightness. Like a poor engineer you ignored the human factors.

          If your bridges collapse and your houses burn down, having been polite will not keep you out of prison...
          But I can see you are one of those that only user their intelligence to justify their

          • You wish.

            Why would I wish anything of the sort? I said "spoken like an armchair engineer", because you sound like one. If you're employed as an engineer, well, that's just sad.

            You are the one saying anything about ignoring human factors.

            Yep that's bcause you were ignoring them. That was literally my point, well done. Have a cookie.

            If your bridges collapse and your houses burn down, having been polite will not keep you out of prison...

            Given the bit you replied to, you are effectively that the way to stay ou

    • Re: (Score:2, Interesting)

      by Gavagai80 ( 1275204 )

      Politeness has a bigger impact on the number of quality kernel contributors than the others, because it factors into a lot more messages. A polite response to an ignorant person leaves open a possibility (even if it's say 20% chance) of said person becoming more educated and making a better contribution in the future. Extremely rude responses almost inevitably mean the person never contributes to the project again in their life, even if they made the mistake as a teenager.

      Linus' politeness isn't a legal or

    • by green1 ( 322787 )

      If you talk to my boss, being polite is the absolute most important part. Being right is irrelevant. I have been dragged in to his office a few times and chastised severely for messages far more polite than the one in the summary, not because they were wrong, but because they offended someone who thought they had a god given right to ignore company policy. I've been told the right answer is to respond in a way that is so watered down that you can no longer even discern my position on the matter (my boss has

  • I told someone that I'm predicting Linus will release some custom AI he wrote during the break.

    He got tired of version control and went off an wrote Git, so what's the chance he went off and wrote some filtering software that intelligently replaces phrases with grammatically correct (and PC/SJW compliant) phrases?

    He hinted at this before his absence, so I'm gonna bet he installed a "circuit breaker" that prevents tirades from leaving his mailbox.

    • If he did and publicized it - the SJWs likely would find a reason to go after him for this. So his not publicizing does not mean he didn't develop and deploy such an AI.

"Someone's been mean to you! Tell me who it is, so I can punch him tastefully." -- Ralph Bakshi's Mighty Mouse

Working...