Linus Torvalds: "Somebody is pushing complete garbage for unclear reasons." - <AUTHOR> http://lkml.iu.edu/hypermail/linux/kernel/1801.2/04628.html <comment><USER3> The most striking thing here is that Linus has apparently dismissed incompetence as a rational explanation. Yes, he is often brash, but usually he is accusing someone of sheer stupidity. He does not do that here. Linus alleges that we are being lied to - that we don't know the full story, nor Intel's motives.

Furthermore, we are left to wonder if Microsoft is also being fed "bullshit" patches, and if they may be less discerning than Linus regarding a proper solution.

<comment><USER4> The root question is what else is Intel trying to cover up with these garbage patches? Are they afraid of power leakage across gates allowing an attacker to gain a higher level of privilege in certain generations of silicon, and trying to cover it up with these patches (hence some of the seemingly crazy things they do)?

<comment><USER3> Alternatively, it could also be in the interest of many for these patches to have an inordinate negative affect on performance with Intel CPUs.

I am reminded that Linus has experience in the CPU industry (Transmeta), so he is in a position to see both sides on this.

<comment><USER5> Sorta off-topic, but what did Linus actually _do_ back at Transmeta? Did he contribute to their JIT compiler for x86?

<comment><USER6> At least the journal reports I read at that time implied that much. He was one of the technical leads on this as far as I recall. So he would have had to get a very good knowledge of the Transmeta CPU and of the x86 instruction set for that task. I think it shows here.

<comment><USER7> IIRC, he originally wrote Linux to be 386 specific and essientially to get hands on experience with all of the special features.

He was already one of the best minds of x86 who hadn't seen real internals of another chip, hence why Transmeta hired him in the first place.

</comment></comment></comment></comment></comment></comment><comment><USER8> A lot of people trying to defend being a jerk as necessary in these circumstances. I think Google culture proves the opposite: Googley code and peer reviews, blameless postmortems, and a host of other mechanisms that de- escalate and de-personalize things.

The Meltdown work at Google probably didn't begin with a rant about morons.

It's possible to construct a culture where people can air grievances and criticize others without inducing flame wars. It only works for Linus because people won't go nuclear in the response, but for rank and file engineers, especially of equal stature, if you call someone a moron in a thread, it's likely to kill productivity and create a negative testosterone ladden atmosphere of people trying to avoid being wrong, and counter attacking others.

I've worked at a lot of places where engineer got into heated shouting matches. It's is not a way to increase the probability of zeroing in on a problem, or reaching agreement faster.

<comment><USER9> This is obvious, and it's extremely sad to me that people believe otherwise and vehemently argue that Linus is justified in his pety rants. _It was always pathetic_.

The response is shockingly adult, given the culture Linus insists on trying to push:

[http://lkml.iu.edu/hypermail/linux/kernel/1801.2/05282.html](http://lkml.iu.edu/hypermail/linux/kernel/1801.2/05282.html)

What an _excellent_ writeup, _despite_ the tantrum Linus threw just a few replies earlier.

I'd highly recommend only reading the response and avoiding the Linus 'rant'. The rant contains no valuable information, the response is excellent and far more informative.

I'm sure I'll get downvoted though for calling Linus a baby, because somehow insulting Linus for his flaws is never ok but when Linus does it it's so cool!

<comment><USER10> > _The response is shockingly adult_

Some snippets from the response:

> _since the peanut gallery is paying lots of attention it 's probably worth > explaining it a little more for their benefit_

> _not just drop it quietly because poor Davey is too scared that Linus might > shout at him again_

> _If we can be done with the shouty part, I 'd actually quite like to have a > sensible discussion_

None of this is adult. I'm not directly defending Linus' tone, or claiming that he's "more adult", but derogating and condescending the audience reading these public posts (1st quote), making cheap jokes about Linus' behaviour (2nd quote) and directly insulting Linus (3rd quote) is not what I would define as an "adult" response. Linus' email at least only gets angry and offensive while critiquing the _code_ , and doesn't get personal.

> _The rant contains no valuable information, the response is excellent and > far more informative_

Linus' "rant" informed me that Intel are setting IBRS as a default-off feature that must be asked for - offloading responsibility for security to the software. The response opens by condescending me, tells me that IBRS is expensive (we know), retpoline is performant, and the informativeness seems to stop there.

It then posits that as somehow justifying the offloading of said responsibility with the following:

> _Then along came Paul with the cunning plan of "oh, indirect branches can be > exploited? Screw it, let's not have any of those then", which is retpoline._

> _But wait, why did I say "mostly"? Well, not everyone has a retpoline > compiler yet... but OK, screw them; they need to update._

"Screw them" is the crux of his answer to Linus' concerns. Sorry, how is this in any way an adult response?

<comment><USER11> Linus doesn't get personal when he calls Intel engineers morons? Are they not persons?

<comment><USER10> Yeah you're right. I should have worded that differently, my point was that in using the term "moron", he was focusing on the interface design: code.

Linus' tone is not really defensible, but I just don't think the response compares favourably either.

And, perhaps more importantly, Linus' concerns aren't addressed and the response isn't particularly informative. dwmw2 mentions in comments here on this HN thread that he has been pushing back on Linus' concerns, but the response appears rather to defend those decisions in Intel. Perhaps I misread?

<comment><USER12> At the end of the day, I just don't care about this tone argument. I only care that the issue is resolved properly, and like it or not, there's nobody I would trust to analyse an issue like this more than Linus.

People in this thread are making the (understandable) mistake of assuming that Linus' remarks were aimed at individual engineers at Intel. But they obviously weren't: they were clearly aimed at senior management at Intel to say "we're not going to accept garbage from you."

And I don't even care if it _was_ garbage. Because either it was garbage, or they failed to demonstrate to Linus that it was not garbage. Either way this is entirely Intel's fault.

</comment></comment></comment></comment></comment></comment><comment><USER13> I must say that I'm really happy that Linux is taking a stance on this one. He doesn't care what the legal consequences to Intel are, he is pushing for a proper technical solution damned be the consequences.

<comment><USER14> You're not the only one, he may be brash at times but god damn we need him and maybe we need his brash anti-bullshit meter too.

<comment><USER15> Being able to call out bullshit doesn't mean having to curse it out. All Linus needs to do is say something like "I don't understand why this is here, and I'm not merging it until I do", rather than "They do literally insane things. They do things that do not make sense". The latter is not a technical argument, and it doesn't provide accuracy or clarity about next steps.

"So somebody isn't telling the truth here. Somebody is pushing complete garbage for unclear reasons" \- maybe the patches are bad. Or maybe there is an undisclosed vulnerability (like [https://skyfallattack.com/](https://skyfallattack.com/) ?) that needs this "garbage" to mitigate it, and no-one got Linus properly in the loop. If it's the latter, all this shouting and cursing about "They do things that do not make sense" has likely attracted the attention of people interested in such things...

<comment><USER16> >> Being able to call out bullshit doesn't mean having to curse it out.

Here we go.

>> All Linus needs to do is say something like

And all you need to do is be that nice and be as brilliant as Linus is.

Oh, it's harder to be that smart than it is to be that nice? Maybe consider that for people as highly gifted as Linus, _it actually isn 't._

What you take for granted as normal behavior isn't always normal to others, especially those at the outliers of skill and intelligence.

<comment><USER15> I think you're misreading my comment. The original post was "we need this brashness", my point is, we don't.

If a specific individual is unable to communicate without that, that's a totally different matter - being able to accommodate a wide church of people is a crucial diversity matter.

Would it have been clearer if I had said "All someone in a project leadership position needs to say ..." ? I'm arguing against that the notion that this approach is necessary, not that it shouldn't be accommodated.

<comment><USER17> I'm inclined to disagree on all points.

As sundvor already pointed out, Linus's cursing _works_. He uses it for emphasis, to bring attention to bear where it's needed. Being polite would likely be less effective.

> If a specific individual is unable to communicate without that, that's a > totally different matter - being able to accommodate a wide church of people > is a crucial diversity matter.

So shouldn't you be OK with Linus cursing?

I disagree here too, though. Cursing is a choice, not a disability.

If, say, a firm fires someone for failing to maintain a civil tongue, I'd hardly call that a diversity problem. It could be quite reasonable, depending on the firm.

> I'm arguing against that the notion that this approach is necessary, not > that it shouldn't be accommodated

Define 'necessary'. Would the kernel implode if Linus were more polite? Of course not, but I still agree with sundvor that Linus uses it as an effective tool. He's not just an angry child with poor impulse control.

<comment><USER18> Linus' cursing works because he's Linus, not because he is cursing. There is really no evidence that if he uses strong but less abusive language the work won't get done.

<comment><USER16> >> There is really no evidence that if he uses strong but less abusive language the work won't get done.

That is because there is no other copy of Linus. There's plenty of other lesser software developers who can't do a tenth of what Linus did in his life.

<comment><USER19> There's also no other copy of Donald Knuth, or Dennis Ritchie, or Alan Kay, or any other computer luminary. There's also no other copy of any "other lesser software developer" or you or me or the baristas at your closest Starbucks. What you've said in response is "the sky is blue": indisputably true and essentially irrelevant.

I'd argue that in fact, there _is_ circumstantial evidence that brilliant computer programmers can get work done without occasionally making those they interact with miserable: that evidence is the fact that most brilliant computer programmers get work done without occasionally making those they interact with miserable. There is nothing that _requires_ Linus to make strong points by jumping and down and screaming. That's an affection he deliberately chooses.

There's a strong notion through this whole comment thread of "if he didn't do that, nobody would listen to him," which is absolute nonsense. People don't listen to him because of these kinds of outbursts, they listen to him _because he 's Linus Torvalds._ They listen to him in _spite_ of these kinds of outbursts.

<comment><USER20> >People don't listen to him because of these kinds of outbursts

Check the title of the thread you're in, and how many comments it has. People _absolutely_ listen to him when he has these outbursts. It's usually a solid indicator there's something worth getting outraged about.

</comment></comment></comment></comment></comment></comment></comment></comment></comment></comment><comment><USER21> And here[1] is Woodhouse's coherent latest reply as of a couple hours ago on the issue, which explains for all us in the peanut gallery (his words, which I think are spot on) exactly what this is about, why it's included, how it actually affects the situation, why it was put forth at all, etc.

It appears much less sinister than Linus was insinuating, but Linus has yet to reply.

1: [http://lkml.iu.edu/hypermail/linux/kernel/1801.2/05282.html](http://lkml.iu.edu/hypermail/linux/kernel/1801.2/05282.html)

<comment><USER22> That's an interesting summary but I predict that Linus will destroy him for completely avoiding the hard question: why the fuck IBRS_ALL would not be on by default on future "fixed" chips, if on such CPU it would not be somehow crappy. And the risk of it becoming architectural (with that absurd default) is insane too.

<comment><USER23> Why would he do that? I completely agree with him on that, and I already told him I've been pushing back on it since I first heard about it a few weeks ago. Although there are technical reasons why we might need IBRS_ALL as a stop-gap before we can get to a _proper_ solution, we bloody well ought to have line- of-sight to a proper solution in the same way that RDCL_NO says "it's OK, we fixed it" for Meltdown.

But that's a separate topic. As I explicitly said, I limited that answer to the things we can do on _current_ hardware.

</comment></comment></comment><comment><USER24> In case it's unclear to anyone, David Woodhouse (the person Linus is replying to / previous poster) works for Amazon and previously Intel[1] aka @dwmw2 on Twitter, ironically his twitter profile is: "Kernel hacker. Known to occasionally promote an attitude of violence towards complete morons."

*[1] Correction, I thought (as does Google) that he still worked at Intel, but it was pointed out that he now works at Amazon UK.

<comment><USER25> Thanks for this, the beginning where he quotes himself threw me off.

<comment><USER26> I, too, missed the double-indenting at the start and thought David was replying to Linus. Once I got to the textbook swearing I double-checked and figured it out.

</comment></comment></comment><comment><USER27> FWIW, at least a small part of that email is due to a confusion between Intel acronyms: [http://lkml.iu.edu/hypermail/linux/kernel/1801.2/04637.html](http://lkml.iu.edu/hypermail/linux/kernel/1801.2/04637.html)

<comment><USER28> Agreed, but I don't think it changes the bulk of what he's talking about.

</comment></comment><comment><USER29> I always appreciate Linus' rants. In addition to being somewhat humorous, I usually learn a thing or two from them. It amazes me that people focus on how much of a jerk he's being instead of actually looking at the contents of his emails and learning something.

<comment><USER30> Really? The internet is full of ranting commenters. They all have content of a sort. His don't deserve any more attention just because he's the subject of a hero-worship cult.

Its actually possible to find thoughtful commentary on most any subject, without suffering jerks.

<comment><USER31> Sometimes you just get sick of people pushing off garbage like it's a 3 star Michelin meal.

As the primary kernel developer, the amount of crap he has to deal with gives him broad levity IMO.

I've worked with engineers across many fields over my ~35 years of working. When they're ripping you a new one, you pretty much always deserve it.

Putting shit on a plate is being a jerk, because you're not only wasting your time, you're wasting his time as well.

<comment><USER30> So we're just to take his word for it? Other than profanity what I read had no specifics, just jerky complaining. By a guy who is arguably not an expert at the issue (of Intel Processor microcode internal vulnerabilities).

A thoughtful comment would have illuminated the issue, explained why the fixes were too broad or not specific enough, and how they could be improved.

<comment><USER32> > By a guy who is arguably not an expert at the issue

Linus is the defacto expert on the Linux kernel. His familiarity with the kernel and long history on these issues gives him the credibility to say a patch or code is completely nonsensical.

This isn't Intel's first rodeo. They know what is expected and they continue to play games with their code. If they are pushing garbage then there's a very good chance they know it's garbage.

<comment><USER30> Sorry, I've read the Linux kernel. Not a paragon of coding or design. Mr Linus is not a good programmer.

And he'd have to be an expert on Intel processor internals, which he really can't be. Not in a position to know the details.

</comment></comment></comment></comment></comment></comment><comment><USER33> Well, Torvalds has been heard from, along with Bloomberg and The Economist, as saying that Intel is in denial about this being a big, big problem.

<comment><USER34> Has a major technology media outlet taken a similar position as Bloomberg and The Economist?

<comment><USER35> Are there any people who care about what the "technology media" says?

<comment><USER36> I do. I don't know Bloomberg or The Economist that well, but translating the media brands to Dutch ones, I'd definitely care more what Tweakers.net says about something than NOS - tech news versus general news. I know there are a few people at Tweakers who truly understand technology (like, they can probably write code) whereas at NOS you'd be happy if they explain the word "ransomware" correctly.

<comment><USER37> The Economist is usually surprisingly well-informed about things like these. It's pretty much the only mainstream newspaper where I can read articles about my field without cringing.

<comment><USER38> This. I'm not really sure if I need other news media in global affairs. If it's important Economist will cover it sooner or later, and if it's not, no one will remember it one month after the fact.

</comment></comment></comment></comment></comment></comment><comment><USER39> I have a gut feeling that all of this madness is driven by legal and management terror. Doing the right thing likely means, to many people, admitting fault. Legal has likely banned anyone from doing anything that looks like an admission of guilt. Management and PR, etc. are all probably about saving face, too. The people who care about doing the right thing from a technology perspective likely don't have any power.

</comment><comment><USER24> I think we should count ourselves lucky we have someone so good at spotting bullsh*t like this - and isn't afraid to call it out as they sees it.

Intel & friends have absolutely disgusted me lately, it could be all to easy to settle for less based on their standards, but let's not let them set the standard - they've shown they can't be trusted with quality and when they fail - they can't be trusted to be transparent or even take ownership of the problems they create.

<comment><USER40> Not only spot, but also invests the energy in calling it out and explaining it.

Many business failures i've witnessed happened ultimately because nobody had the energy to cut down the bullshit forest that constantly regrows around a company.

<comment><USER41> We should treasure it while it lasts, before PC culture silences him. And before downvoting, recall how many threads regarding _Linus abusive behavior_ (sic) we've had.

<comment><USER42> Can we stop repeating this? Assertiveness and assholery are not one and the same. Linus has both in abundance, and we can decry the one without wanting the other to go away.

<comment><USER43> Linus "being an asshole" is what drew attention to this issue. His caustic nature is marketing of a sort.

It's clearly putting additional pressure on Intel. How you feel about that depends on how you feel about them furiously trying to sweep everything under the carpet and hoping nobody notices.

Personally I think his humiliation of Intel here is putting necessary pressure on them. If he couched his terms and tried to be "nice" about this they wouldn't feel nearly the same pressure.

<comment><USER42> See it from this angle: if Linus wasn't known for flipping his lid all the time, him flipping out _this_ time would be even more impactful. Overuse makes it progressively less remarkable.

I wasn't even saying that his tone on this particular instance was excessive. I was responding to the general accusation that "PC culture will silence him". There's exactly one sentence I have issues with here ("the whole hardware interface is literally mis-designed by morons"). The rest of the email is toeing the line, but manages to be forceful without being outright insulting.

<comment><USER43> >See it from this angle: if Linus wasn't known for flipping his lid all the time, him flipping out _this_ time would be even more impactful. Overuse makes it progressively less remarkable.

I don't. This is pretty much part of his brand. He's developed a reputation for flipping his lid and lambasting people who have _always_ deserved it using entertainingly colorful language. That's why these rants still get to the top of HN.

>I was responding to the general accusation that "PC culture will silence him".

I mean, that seems to be what you're trying to do by demanding that he water his language down to something that has minimal emotional impact.

It's not like using the word morons is particularly offensive, either - <USER2> to the people who actually deserved it (Intel).

>There's exactly one sentence I have issues with here ("the whole hardware interface is literally mis-designed by morons").

Which is the sentence that got this rant on hacker news, which attracted all the attention _which is necessary_ in order to put pressure on Intel to fix their shit.

<comment><USER42> > Which is the sentence that got this rant on hacker news

And yet the title of the submission is "Somebody is pushing complete garbage for unclear reasons". That's a good suggestion that the moron quote is not "what got this rant on hacker news". Perhaps it's on hacker news not because the form is inflammatory, but because the content is insightful.

Maybe—just maybe—the fact that the Linux project lead publicly accused Intel of not having their shit together is newsworthy and would end up on the front page of Hacker News no matter what tone it was written in, because that is newsworthy enough in and of itself.

<comment><USER44> spooks keeping their back door open? a la Dual_EC_DRBG and RSA etc...

</comment></comment></comment></comment></comment></comment></comment></comment></comment><comment><USER45> > Have you _looked_ at the patches you are talking about? You should have - > several of them bear your name.

This made me so nervous on his behalf

<comment><USER46> It is possible the patches are submitted on behalf of others.

</comment></comment><comment><USER47> Linus is angry, that always makes me happy.

Lord knows where we would be today if we had leaders like this more frequently through history.

<comment><USER48> It does make me worry about the day that Linus retires. I imagine the kernel has enough momentum to carry on for a while but without a leader like Linus I can see it very slowly starting to unravel and quality issues starting to sneak in, much like we're seeing with post-Jobs Apple.

Thankfully it doesn't seem that time is coming any time soon.

<comment><USER49> What about *BSD ? How are they managing their kernels and other important decisions?

I know next to nothing about the BSD communities, my only interaction with the BSD is discussing the taste of a pizza Theo de Raadt and I shared about 20 years ago and young me had no idea who he was. I later heard he is at the helm of OpenBSD and is used to strongly defend his opinions but it is only hearsay.

I have no idea how FreeBSD or OpenBSD communities are organized but I suspect they might not be relying on one specific individual for their major decisions?

<comment><USER50> As for NetBSD, there's hundreds of people with commit access and a small group of respected developers to resolve disputes, with some extra democracy / laws restricting it. FreeBSD is similar but I never bothered to check the details.

I think we generate less hackernews-worthy drama posts overall because when someone is repeatedly abusive, they're asked privately to stop/apologize, and if they keep at it, they risk being kicked from the project.

With hundreds of contributors and a weak hierarchy, no one person is too important to be kicked.

</comment></comment></comment></comment><comment><USER51> Are people reading the rest of the thread? Linus admitted mistaking an acronym and changed his tone from "pushing garbage for unclear reasons" to just "garbage patches".

</comment><comment><USER52> I have a question :)

Can it be that Linus is so angry with people and their incompetence because he actually gives a shit about Linux and the code?

I'm not interested if his rants are ethic or not, if they are effective or not. I'm just trying to understand why he's ranting? Because he's an ill adjusted person? Or is there something else?

Linus is 'infamous' for being very angry with people who write shitty code. Why is that? If you read the chapters written by him in 'The Hacker Ethic', you find out that he codes because he's enjoying it, it's what makes him happy, so to speak. Therefore, he is invested in the code he writes. It's not just a job for him. It's his life's project, his 'baby' if you will.

Can it be that because he's so emotionally invested into the code, when he sees that other people push shitty code and don't care about it, the intensity of the emotions he feels are way higher than the emotions of a manager who's just 'doing his job'? Can it be that because he cares so much, he's having a hard time not reacting so 'emotionally'?

</comment><comment><USER53> Haha, two mails down, David Woodhouse doesn't disappoint and sends a message that'm copying here:

[http://lkml.iu.edu/hypermail/linux/kernel/1801.2/05282.html](http://lkml.iu.edu/hypermail/linux/kernel/1801.2/05282.html)

        I think we've covered the technical part of this now, not that you like
        it â not that any of us *like* it. But since the peanut gallery is
        paying lots of attention it's probably worth explaining it a little
        more for their benefit.

        This is all about Spectre variant 2, where the CPU can be tricked into
        mispredicting the target of an indirect branch. And I'm specifically
        looking at what we can do on *current* hardware, where we're limited to
        the hacks they can manage to add in the microcode.

        The new microcode from Intel and AMD adds three new features.

        One new feature (IBPB) is a complete barrier for branch prediction.
        After frobbing this, no branch targets learned earlier are going to be
        used. It's kind of expensive (order of magnitude ~4000 cycles).

        The second (STIBP) protects a hyperthread sibling from following branch
        predictions which were learned on another sibling. You *might* want
        this when running unrelated processes in userspace, for example. Or
        different VM guests running on HT siblings.

        The third feature (IBRS) is more complicated. It's designed to be
        set when you enter a more privileged execution mode (i.e. the kernel).
        It prevents branch targets learned in a less-privileged execution mode,
        BEFORE IT WAS MOST RECENTLY SET, from taking effect. But it's not just
        a 'set-and-forget' feature, it also has barrier-like semantics and
        needs to be set on *each* entry into the kernel (from userspace or a VM
        guest). It's *also* expensive. And a vile hack, but for a while it was
        the only option we had.

        Even with IBRS, the CPU cannot tell the difference between different
        userspace processes, and between different VM guests. So in addition to
        IBRS to protect the kernel, we need the full IBPB barrier on context
        switch and vmexit. And maybe STIBP while they're running.

        Then along came Paul with the cunning plan of "oh, indirect branches
        can be exploited? Screw it, let's not have any of *those* then", which
        is retpoline. And it's a *lot* faster than frobbing IBRS on every entry
        into the kernel. It's a massive performance win.

        So now we *mostly* don't need IBRS. We build with retpoline, use IBPB
        on context switches/vmexit (which is in the first part of this patch
        series before IBRS is added), and we're safe. We even refactored the
        patch series to put retpoline first.

        But wait, why did I say "mostly"? Well, not everyone has a retpoline
        compiler yet... but OK, screw them; they need to update.

        Then there's Skylake, and that generation of CPU cores. For complicated
        reasons they actually end up being vulnerable not just on indirect
        branches, but also on a 'ret' in some circumstances (such as 16+ CALLs
        in a deep chain).

        The IBRS solution, ugly though it is, did address that. Retpoline
        doesn't. There are patches being floated to detect and prevent deep
        stacks, and deal with some of the other special cases that bite on SKL,
        but those are icky too. And in fact IBRS performance isn't anywhere
        near as bad on this generation of CPUs as it is on earlier CPUs
        *anyway*, which makes it not quite so insane to *contemplate* using it
        as Intel proposed.

        That's why my initial idea, as implemented in this RFC patchset, was to
        stick with IBRS on Skylake, and use retpoline everywhere else. I'll
        give you "garbage patches", but they weren't being "just mindlessly
        sent around". If we're going to drop IBRS support and accept the
        caveats, then let's do it as a conscious decision having seen what it
        would look like, not just drop it quietly because poor Davey is too
        scared that Linus might shout at him again. :)

        I have seen *hand-wavy* analyses of the Skylake thing that mean I'm not
        actually lying awake at night fretting about it, but nothing concrete
        that really says it's OK.

        If you view retpoline as a performance optimisation, which is how it
        first arrived, then it's rather unconventional to say "well, it only
        opens a *little* bit of a security hole but it does go nice and fast so
        let's do it".

        But fine, I'm content with ditching the use of IBRS to protect the
        kernel, and I'm not even surprised. There's a *reason* we put it last
        in the series, as both the most contentious and most dispensable part.
        I'd be *happier* with a coherent analysis showing Skylake is still OK,
        but hey-ho, screw Skylake.

        The early part of the series adds the new feature bits and detects when
        it can turn KPTI off on non-Meltdown-vulnerable Intel CPUs, and also
        supports the IBPB barrier that we need to make retpoline complete. That
        much I think we definitely *do* want. There have been a bunch of us
        working on this behind the scenes; one of us will probably post that
        bit in the next day or so.

        I think we also want to expose IBRS to VM guests, even if we don't use
        it ourselves. Because Windows guests (and RHEL guests; yay!) do use it.

        If we can be done with the shouty part, I'd actually quite like to have
        a sensible discussion about when, if ever, we do IBPB on context switch
        (ptraceability and dumpable have both been suggested) and when, if
        ever, we set STIPB in userspace.

</comment><comment><USER54> Are state actors or others trying to take advantage of meltdown needing fixes & patches to insert their own version of fixes & patches that end up benefiting them?

<comment><USER55> As far as we know, there has never been a single attack using either of specter or meltdown issues. No code had been found, nothing.

It appears to be very difficult to take advantage of, and the initial idea of a JavaScript exploit seems to not be possible.

Part of the reason for all of this might be that the attacker needs to run code on the target machine, and one the attacker can do that, there are far easier ways to read memory.

<comment><USER56> Meltdown is almost _trivial_ to take advantage of, as these things go, _and_ it was discovered independently by more than one researcher. That makes it somewhat more likely to have been exploited by a government level attacker.

However, just being able to read all of kernelspace is more of a force- multiplier than being useful on its own. You still need to get your code executing in user-space to do anything, ant it's value even then is at least partly tied up in its ability to easily defeat KASLR.

<comment><USER55> Trivial, yet nobody has managed to produce a working exploit that doesn't require a running start. The poc exploits wouldn't work in the wild. They are running with interference of a real system.

Also, meltdown requires the data to be snooped to be in L1D cache. So the current demo exploit has to keep pushing the data into cache to be read.

Something simple like steal a password from sudo should be trivia right? I'd not convinced i need to worry.

And making non public facing machines pay the price of the mitigation seems like too much.

<comment><USER47> Absolutely. I will be really pissed of if I'm forced to run a -30% kernel performance on my dev laptop, or god knows how much of my 1/2 decade old T420's to fix a problem I don't have. Yes, I expect my cloud provider and bank to apply the patch, my ARM based router is fine.

Thanks, but no thanks, do not want.

<comment><USER57> You have secrets, some of them worth a lot:

        - cookies (e.g., for online banking sessions)
        - keys (e.g., for pushing to git repos)
        - browser history
        - identities (oh, did you post anonymously somewhere?)
        - ...

PoC code that runs in-browser exists. It's only a matter of time before it's weaponized.

<comment><USER55> There is no in browser meltdown exploit at all.

And even the whitepaper doesn't have a working js exploit of spectre, just a couple pieces and some assumptions.

</comment></comment></comment></comment></comment></comment></comment><comment><USER58> > As a hack for existing CPUs, it's just about tolerable â as long as it > can > die entirely by the next generation.

> Certainly it's a nasty hack, but hey â the world was on fire and in the > > end we didn't have to just turn the datacentres off and go back to goat > > farming, so it's not all bad.

Off-topic, but what is with the "â" in these sentences? Is that just some weird encoding error, or does it actually have meaning?

<comment><USER59> Probably an encoding error. An m-dash is E2 80 94 in UTF-8. (An n-dash is E2 80 93.) I suspect that the original UTF-8 is misinterpreted as ISO 8859-1 or a similar encoding, where 0xE2 is "â", and the other two are unassigned or control characters.

<comment><USER60> Sounds about right.

As a rule of thumb if you see a's with accents you're loooking at a UTF-8 encoding problem.

</comment></comment></comment><comment><USER61> If someone were to call _you_ stupid, would you be more or less willing to help? How does calling other professionals stupid help the situation?

</comment><comment><USER62> Looks like Intel is trying to avoiding the best solution to not compromise benchmark scores.

</comment><comment><USER63> It's upsetting that the media and some of the mainstream audience see Linus as a "crank" that only exists to complain and tear people down. Examples like this show how valuable his experience is. I would NEVER ask him to water himself down knowing it would likely make his technical analysis worse.

</comment><comment><USER64> A lot of comments feel like they are __because Linus __

I want to observe this is somebody who used to work at Transmeta. They were not a large company, and whilst I don 't think he directly did VLSI, he very probably understood the interaction of instruction set, chip level behaviour and upper system (specifically operating system and compiler) implications of what a chip does.

I am interested in his response to Intel on that basis. I'd prefer he was less overtly rude and aggressive about it, but I think he manages to convey a real sense of anger and concern about things: How did Intel arrive at this fix. How did Intel discuss this fix with people who have to modify systems to work with it. Qui Bono.

</comment><comment><USER65> Someone brings shit to you front door in means that they'd like you to bring it in your house. What are you going to do? Most of us will react on such similarly to Linus.

</comment><comment><USER66> From what I understand of meltdown and spectre, they use a side channel attack to figure out CPU cache values after some speculative execution has been done. Can it not be solved by ensuring that the CPU either clears or purposefully does not cache memory that is read during speculative execution?

<comment><USER67> more or less... I'm surprised the CPU doesn't already flush caches after speculative execution branches are abandoned

<comment><USER68> Flushing the cache after every branch misprediction would probably make branch prediction a net loss in performance.

<comment><USER67> Well not all caches, just the part tagged with the mispredicted branch

<comment><USER69> But that'd still be vulnerable.

The issue isn't that you can read whatever was in/got brought into cache, the issue is that you can tell which part of the cache got evicted and infer values based on that.

</comment></comment></comment></comment></comment><comment><USER70> The "rant" is an attention getter, no more no less, a bit of theater. Once everyone is paying attention, then the real purpose begins. Yes, there are other ways of doing it, but I would argue that none, are even remotely as effective gaining the necessary focused attention.

</comment><comment><USER71> Why doesn't Intel just go to Linus and ask politely: "Ok, we f-ed up, here is a million dollars (or whatever, 10x his normal salary or something) can you please work with us tightly for some time? Thank you."

I would really respect Intel if they would.

<comment><USER72> Why should they ask politely? It is not like the Linux mailing list would be polite environment.

Nothing against impolite environment, people make case for it daily here and I don't care. But it combined with the standard expectation that when someone else talks to them he should be always polite is getting funny in that context.

<comment><USER73> There's more ways to be impolite than saying nasty words.

Linus had been treating all this situation very fairly so far, but I guess Intel just had to repeatedly try pushing very bad fixes to a problem they created themselves.

Imagine you go to a restaurant, and the waiter just repeatedly brings you the wrong order, repeatedly.

<comment><USER72> Ad restaurant: I would not be rude to them in that situation. I would refuse to pay wrong food if I would think I don't want to eat it.

If I would be hungry, I would be angry, but I would still not insult them and there is no rational reason to do so. I can control my anger in easy restaurant situatuon like that. At worst, I would leave.

</comment></comment></comment></comment><comment><USER74> To me, Torvald's nasty attitude usually nullifies his (unquestionable) technical merits. There's no excuse to SHOUT, curse, and treat others as imbeciles on e-mail; even less so on fora as public and prominent as the linux kernel's mailing lists.

As much as I decry patronising calls to make tech more "inclusive" and "nice", I must admit that people like Linus are a great argument in favour of that...

</comment><comment><USER75> _So somebody isn 't telling the truth here. Somebody is pushing complete garbage for unclear reasons. Sorry for having to point that out.

As it is, the patches are COMPLETE AND UTTER GARBAGE.

They do literally insane things. They do things that do not make sense. That makes all your arguments questionable and suspicious. The patches do things that are not sane._

Is Linus suggesting these patches are so bad that there could possibly be a camouflaged backdoor?

<comment><USER76> He certainly doesn't think it is a mistake. And that would fall within the spectrum of possibilities, but I would doubt anyone considers that as a probable reason, since it would be stupid to push something like that right now. Like future-destroying stupid.

<comment><USER75> But if he doesn't think it's a mistake... what could it be?

<comment><USER76> He says:

The whole IBRS_ALL feature to me very clearly says "Intel is not serious about this, we'll have a ugly hack that will be so expensive that we don't want to enable it by default, because that would look bad in benchmarks".

So instead they try to push the garbage down to us. And they are doing it entirely wrong, even from a technical standpoint.

I'm sure there is some lawyer there who says "we'll have to go through motions to protect against a lawsuit". But legal reasons do not make for good technology, or good patches that I should apply.

</comment></comment></comment></comment><comment><USER77> Yup, looks like it's time for me to pull out the good ole Amiga 500 from the closet, and use it as my main PC again. Guru meditation errors anyone?

</comment><comment><USER78> This entire thread where folks are bashing Linus for his tone reminded me of this fun clip from the classic movie "Team America" (NSFW):

[https://www.youtube.com/watch?v=UIPSvIz9NDs](https://www.youtube.com/watch?v=UIPSvIz9NDs)

</comment><comment><USER79> Yes, finally the engineering community is being divided into two large groups - one that actually focuses one the technical issue at hand and one that focuses on personal insults. Everybody is winning, I suspect?

</comment><comment><USER80> "Boy that escalated quickly..." [https://youtu.be/ipsPgNEmAXI?t=301](https://youtu.be/ipsPgNEmAXI?t=301) Anchorman fight scene aftermath

</comment><comment><USER81> Having a sudden reason to push shadow software patches to nearly every device and server in the world...I wonder who would benefit from that...

</comment><comment><USER82> It seems the grandparent (authored by Linus, too) in the email thread is not available any more. Did Linus delete it?

</comment><comment><USER83> I want to create a new LKML account just to reply simply with

> s/cool-aid/kool-aid/

Sometimes I just want to see the world burn.

<comment><USER84> It was actually flavor-aid :)

[https://en.wikipedia.org/wiki/Drinking_the_Kool- Aid#Backgrou...](https://en.wikipedia.org/wiki/Drinking_the_Kool- Aid#Background)

</comment></comment><comment><USER24> I wish people in this thread would stop turning the discussion into a straw- man argument about Linus's language and focus their attention to the technical and security problems at hand.

Some people are easily offended, some people easily offend, some people are direct, some people are indirect - get over it.

What matters here is the quality of the code / workarounds that are being presented, by whom and what alternatives they are.

<comment><USER85> > I wish people in this thread would stop turning the discussion into a straw- > man argument about Linus's language and focus their attention to the > technical and security problems at hand.

There wasn't much of a technical and security discussion in what was posted. Linus spent his time writing about his feelings and how hurt they were that someone did something he didn't like. Very little of substance or merit was communicated. If you consistently behave like a petulant child in a leadership role, expect people to gawk at it.

<comment><USER86> I feel like a lot of people judge Linus by some internal moral compass which just seems pointless to me. If anything is petulant and childish it's trying to control others for not fitting within some arbitrary set of personal rules.

Linus does a good job at maintaining kernel development and often makes sharp technical commentary. By those measures his communication style seems to have been successful and practically helpful so far.

</comment></comment></comment><comment><USER87> "the whole hardware interface is literally mis-designed by morons"

Taken literally, this is not true.

</comment><comment><USER88> Intel, please, hire Linus: If you can't beat him, join him.

</comment><comment><USER89> I'm going to be honest, I need an ELI5 here. I know what the meltdown/spectre issues are, and kinda understand what retpoline is.

<comment><USER90> Big simplification:

Proper way to fix an hardware bug like this, is that newer cpu gets protected by default, and they answer they are when queried.

So you can ask the CPU "what's your status on bug X" and the cpu answers "i'm good, you don't need to do anything" (newer fixed chips), or "i know about it but was already built, and need microcode update/special behavior to protect myself" (current chips with microcode update), "no answer / I'm not good" (old chips without update).

So new stuff is protected, and you add more protection (and slowdowns, and special stuff) for older chips that don't know how to deal with it.

What Intel is trying to do here, is to go the other way: the chips, even the new ones, will stay vulnerable by default, and when queried they say "I have a fix but I don't use it, you can enable it by asking !" and the kernel is supposed to enable it.

It's terrible for a lot of reasons, like "boot an older os and it's vulnerable since it doesn't know to call this", "additional code to enable this feature has to run for all of eternity for new chips now, instead of having to run for older chips and being phased out over time", etc ...

The reason why Intel does that seems obvious: by default the chip does not lose speed since the fix is not enabled, and so instead of "intel chips lose 30% speed over night because of a flaw" it becomes "intel adds a special security mode that protects you even more for critical applications, at the cost of some speed". Purely marketing speech and decision at the cost of proper engineering decisions, and they need and try to get OSes like Linux to play along. That's what he means by "[it] shows intel had no intention of fixing those flaws".

Additionally there seems to be a second issue in that the quality and behavior of the patches they submitted are trying to hide this deceptively simple but technically terrible behavior by making it look/sound obtuse and complicated.

In other words, intel is using its presence and weight to try and push a shitty solution, but one that is better for them marketing wise. Linus is flabbergasted to be treated like an idiot or a obedient drone that should apply such obvious abusive patches.

<comment><USER36> This doesn't make sense though. If Intel indeed plans to leave chips vulnerable except if you set a flag, then how are these bullshit patches? This will be the only solution Intel is going to deliver right? I get that he doesn't like it, but that doesn't explain why he feels lied to. If Intel says "we're going to not turn the patch on by default", wherein does he suspect the lie?

<comment><USER90> He's complaining about their "fix" being terrible, but isn't fully against using it the end since as you said, that's all there is going to be to have the chips work properly.

The reason he refuses those current patches and directly call it a lie/deception is because of what my last two paragraphs related; if you read his message (where the link points to) it's about half way: Intel tries to disguise it by doing it in a convoluted way. Basically they try to avoid making it obvious when looking at the code, because they don't want a "if (intel_chip) enable_fix_because_default_is_broken_on_intel();" and instead pushes something that looks like the kernel _needs_ to do lots of complex stuff [aka, "it's complex, and a fix-on-chip is not enough the kernel needs protection anyway !", and that means a terrible patch with lots of garbage and filler code.

Intel's intention is clear in that they specifically pushes this in the same patchset as the "tell the chip to be secure", trying to mush the two things together to make it looks like it's all the same thing, whereas in reality it should be two patchset: one to enable the security mode, and bad for intel marketing wise. And a second one to add those "fixes" to the kernel, that would be refused because terrible and in part unecessary since retpoline already protects it. What Linus is saying is "sure I need the first change, but since you're intent on pushing them together I'm refusing them, because the second one is pure garbage, and you mix them together to hide the first".

Eg quotes from said mail to show it's indeed his problem:

> So instead they try to push the garbage down to us. And they are doing it > entirely wrong, even from a technical standpoint.

and

> The patches do things like add the garbage MSR writes to the kernel > entry/exit points. That's insane. That says "we're trying to protect the > kernel". We already have retpoline there, with less overhead.

(what he means here is that they try in their patch to make it look like the kernel needs a special protection, while it already has it through retpoline)

and

> So somebody isn't telling the truth here. Somebody is pushing complete > garbage for unclear reasons. Sorry for having to point that out. If this was > about flushing the BTB at actual context switches between different users, > I'd believe you. But that's not at all what the patches do.

(eg "why are you pushing all this crap around to hide what's really happening/need to be executed")

<comment><USER36> That makes sense, thank you!

</comment></comment></comment></comment></comment><comment><USER91> Could this whole disaster and the shitty patches have something to do with the remote kill switch (Anti Theft) Intel have in their CPUs?

If someone could enable and trigger that remotely, it would make for fun times.

<comment><USER92> It may interest you that a virus which kills its host won't spread as well as viruses which co-exist. This is basic from epidemics transmission rate. The longer an infected host keeps spreading the infection on, the more individuals will be infected. If the host is killed it will no longer spread the infection and therefore the infection may infect fewer hosts and this reduction in transmission rate alone may prevent a major outbreak.

[https://en.wikipedia.org/wiki/Mathematical_modelling_of_infe...](https://en.wikipedia.org/wiki/Mathematical_modelling_of_infectious_disease#The_SIR_model)

<comment><USER93> In nature, we usually only consider two success metrics: hosts infected and hosts killed. To maximize hosts infected, keeping the host alive and transmitting is very successful, so the most successful examples are those we barely even take note of (common cold, intestinal worms, etc.). To maximize hosts killed, in the physical world you either need a long incubation period where the host stays alive and transmitting (AIDS) or agressive transmission methods that humans have been getting quite good at shutting down (with the exception of transmission by mosquito).

In the world of digital viruses traditional metrics can apply too (Ransomware is measured by hosts "killed", botnets by hosts infected), but those are no longer the only interesting metrics. A virus that spreads within a certain IP block and one month after inception bricks everything it can reach might be regarded as highly successful, despite killing itself in the process.

</comment></comment></comment><comment><USER94> Why do people censor words like that? They are not fooling anyone.

<comment><USER95> _They are not fooling anyone._

They are fooling the content filters some corporate services use to block emails though.

<comment><USER36> I suspect it has more to do with the American culture. Every time I watch something American, be it a TV show or YouTube from a big name, things are constantly bleeped out or you notice they don't mention swear words. It's super annoying - either accept it and stop beeping, or stop swearing all the fucking time. It's also not as if you have no idea what that beep meant.

<comment><USER96> > It's super annoying - either accept it and stop beeping

IIRC the beeping at least of four-letter-words has to be done to avoid higher PG-ratings and/or fines from the FCC. Not much to do there.

</comment></comment></comment></comment><comment><USER97> All the people here excoriating Torvalds for using mean language couldn't do in a lifetime what he does in the average week.

Let the man get his job done and stop pretending to be offended by someone who communicates effectively.

I'm tired of this pearl-clutching nonsense from the youngsters in tech.

</comment><comment><USER98> >Not doing the right thing for meltdown would be completely unacceptable.

Like not patching it at all. Like selling new ARM Chromebooks with no plans to ever patch meltdown in the firmware or kernel. Because that's what Google+Partners is doing with Rockchip Chromebooks AFAICT.

</comment><comment><USER99> Whoever changed the title managed to make it less clear. With "Linus" in the title it was clear that it was Linux.

<comment><USER100> I did that. We've observed over the years that celebrity names in titles tend to make for poorer discussion. HN is better when the focus is on content rather than personalities.

[https://hn.algolia.com/?query=by:dang%20content%20personalit...](https://hn.algolia.com/?query=by:dang%20content%20personalities&sort=byDate&dateRange=all&type=comment&storyText=false&prefix=false&page=0)

Edit: ok, you guys have convinced me that this is a special case and we've put Linus back in the title above.

<comment><USER101> But it would certainly be good to have some context on the quote (i.e. that it has to do with Linux, Intel and Meltdown)

<comment><USER102> Yeah, now the title is more clickbaity

</comment></comment></comment></comment><comment><USER103> Am I the only person who finds this extremely difficult to read? The top says "David wrote" and then it looks like he's replying to a message from Linus Torvalds. So any quoted text is by Linus, right? But then....the letter is signed by Linus? So who wrote it? I know this is some ancient technology but Jesus, the user interface is horrendous.

<comment><USER104> Probably depends on how old you are. To me it was completely obvious and much, much clearer than most 'modern' user interfaces. Every person replying prefixes each line with > . Proper email clients do this automatically. This way you can tell from the number of >'s how far back on the 'stack' you have to go to know who wrote it. You start reading from the top, mentally associating an indent level (nr of >'s) with a person/email address. It's easy to follow any mail with up to say 3 or 4 different people; after that it takes some thinking sometimes, in long emails.

I'm actually surprised at the number of people here complaining about the legibility. This is absolutely basic knowledge; or maybe I'm just even older than I imagine myself to be. How can someone who can't even figure this out write software? (I realize that not everybody on this site is a programmer nowadays, but still)

<comment><USER105> People live in Slack and github today. The last time I had an actual conversation via email was probably 2 years ago.

It's rather refreshing to see the Linux kernel keeping the tradition of using mailing lists. Every company I've worked at has felt the need to gather a bunch of people in a room (or teleconference) and "knock things out" in real- time. Then, everyone leaves and develops a severe case of amnesia. Never mind that for technical debates you really need some time to think and reply _in detail_. Which Slack is not good at, but... surprise, email is. But alas, it's "too old."

<comment><USER106> Google Docs is surprisingly good for some of this kind of deliberation. (We used it at Google.)

Especially when you use the 'suggesting' feature. It's a bit like a mini-PR for your docs.

Google Wave was supposed to be really good for this---better than email.

<comment><USER107> There isn't a week that passes where I don't miss Google Wave. It was a bit bloated, and javascript engines weren't quite up to speed for it (it was practically unusable on FireFox), but I still believe it was the best chance at an email evolution that we'll see in our lifetimes.

</comment></comment></comment></comment></comment><comment><USER108> Sound like Intel is interested in allowing hacks, probably for government oversight.

<comment><USER109> This looks less like allowing hacks for states and more like covering their asses in benchmarks.

</comment></comment><comment><USER110> So are we going to unmerge this, and force Intel to fix this properly in microcode?

<comment><AUTHOR> Said current patches haven't been merged. Just posted to the mailing list for review.

Retpolines for Spectre, and PTI for Meltdown, are still in the kernel. Linus doesn't have too much disagreement with them. It's the IBRS / IBPB code for Intel's CPUs that Linus has a problem with.

Also, not everything can be mitigated in microcode, for many reasons, not all of which I understand myself. Sometimes, only a fundamental hardware-redesign can fix the issues proper.

<comment><USER33> Well, for one thing, modern CPUs aren't microcoded much. Real microcoded CPUs went out with the 1980s. The microcode in today's fast CPUs is mostly initialization, and maybe emulation support for some instructions nobody uses any more, like decimal arithmetic or 16-bit mode. The microcode can maybe turn some stuff off and tweak some tuning parameters. Anyone know what Intel's "fixes" really do?

<comment><USER111> Microcode is a little more capable than that. See [https://media.ccc.de/v/34c3-9058-everything_you_want_to_know...](https://media.ccc.de/v/34c3-9058-everything_you_want_to_know_about_x86_microcode_but_might_have_been_afraid_to_ask)

Edit: s/Intel m/M/

<comment><USER112> That talk is about AMD.

</comment></comment></comment></comment></comment><comment><USER113> So, it means more delays in upstream patches.

<comment><USER24> Would you rather have the kernel filled with false or botched security?

</comment></comment><comment><USER114> Really abusive language. There are ways to communicate his objections to the patches with extremely strong language WITHOUT resorting to abusive language.

I wouldn't tolerate anyone treating me like this. There are unseen consequences to a wild tongue.

<comment><USER115> I think you're hitting a cultural barrier.

In my country, if someone brought me something terrible, in a professional environment, I would tell them it's bullshit, and go try again. And that would be fine and dandy, and expected. (I'd expect the same treatment of myself. And it has happened.)

I get the feeling, that in the US, you can't criticise. You have to use some political language to say you like it, whilst meaning you don't.

Linus is Finnish. He says what he means. And it's expected, and entirely acceptable.

There are a handful of nations around the world, where saying exactly what you mean is far more valued than trying to preserve whatever emotion someone has invested into their work.

<comment><USER116> Question is, is it constructive? Does ranting really yield better results than just stating the facts (both short term for fixing the problem and long term for working together)?

It might work for Linus on the LKML, but it certainly doesn't for everyone and in all circumstances.

<comment><USER115> > It might work for Linus on the LKML, but it certainly doesn't for everyone > and in all circumstances.

Exactly, it's cultural.

And, I wouldn't call it ranting. If you look at Linus' famous examples of this, he may first call it bullshit (calling it as it is), and then he goes on to explain why it is, and usually also explains how to polish the turd into what it should have been.

It certainly works in my experience, having been on both ends of this sort of communication.

It tells you that your quality has fallen well and truly below the expected level of output.

But it isn't something held against you either. Because in these same cultures, it is okay to make a mistake, even costly ones. Because they make you better.

I've shown you that what you made is crap, and why it is crap. So now I know that you know that sort of thing is crap, and will strive to make something better. And you also know I won't turn around tomorrow and remind you of it, because you're passed it. Probably not even in jest.

</comment></comment></comment></comment><comment><USER117> Run through the Linus drama filter, the only thing I get from this is "Linus doesn't like the Meltdown/Spectre patches'; Linus having issues with a patch is, well, not particularly newsworthy. Is there something more significant here than a bad first go at this?

<comment><USER118> I interpreted it as: Intel isn't going to fix Specter in HW (as opposed to Meltdown)

Instead, they do some crazy _crazy_ black magic in the patches.

<comment><USER119> I read it like:

Intel will make a fix but the fix will be disabled by default as that results in the best performance numbers, those that will be reported in the media.

When you want to use the CPU in the cloud, you have to enable the fix and get much lower performance. But nobody in the media will care about that as they have the nice performance numbers and therefore Intel don't care to implement a fix with high performance.

</comment></comment></comment><comment><USER120> I get that Linus is adored for "rejecting political correctness" or "speaking truth to power", but this email just shows how little such rants can achieve: he makes almost no argument, relying on his authority instead.

i'm actually not quite sure what he's trying to achieve... There's no chance that a patch will make it into the kernel against his objections, so he doesn't really need to convince anybody.

If he's trying to make a case against Intel, he's unlikely to succeed with the digital version of screaming expletives at people.

I have absolutely no "moral" objections against the use of all the FUCKING BULLSHITS anybody wants. But there's a reason this style isn't used more often in politics/law/philosophy or any other profession trying to change peoples' minds: it really doesn't work.

If anything, these rants show that Linus is unable to effectively use language to make his arguments. It makes him appear small, weak, and angry.

<comment><USER48> Are we reading the same thing? He states very clearly the specific technical issues and behaviour from Intel that he perceives to be "FUCKING BULLSHIT".</comment></comment>


As Google cars roll out, Deere reminds us of its 1000s of self-driving tractors - <AUTHOR> http://robohub.org/as-google-cars-roll-out-deere-reminds-us-of-its-thousands-of-self-driving-tractors/

<comment><USER2> Yeah, but the future of self-driving cars seems brighter than the one of self- driving tractors (on pre-computed routes): you can solve a massive urban problem VS help some rich farmers to save some time</comment>


Instant Sex: Has the Digital Age Destroyed Relationships or Made Them Better? - <AUTHOR> http://www.alternet.org/sex/143801/instant_sex%3A_has_the_digital_age_destroyed_relationships_or_made_them_better?page=entire

<comment><USER2> I don't know where people get the "Happy Days" type concept of the past that this piece talks about. If you watch old (American) movies, relationships between men and women were typically portrayed in a very awkward, stilted, "I have no idea how to talk to you" kind of way. I strongly suspect that reflected actual cultural norms to some degree or another.</comment>


Yo API Leaked - <AUTHOR> https://paste.ee/p/Dh0KW

<comment><USER2> I'd like to clarify that this "leak" doesn't contain the master key, which makes it harmless. As far as I'm aware, there's no way to include Parse in your application without "leaking" your keys.

</comment><comment><USER3> So, how can other apps using Parse prevent from leaking keys?

<comment><USER4> You can't. Putting keys in a distributed app means it can be reversed somehow and leaked.

</comment></comment><comment><USER5> You do realize that this information is already available by sniffing? You didn't leak anything.

</comment><comment><USER6> Can we stop talking about this app yet? I'm starting to get self conscious about being in this industry.</comment>


Judge derails Virginia AG's latest attack on climate science - <AUTHOR> http://arstechnica.com/science/news/2010/08/va-attorney-generals-pursuit-of-climate-scientist-quashed.ars

<comment><USER2> Please don't post political topics. Thisas nothing really to do with hacking or startups. I'd like HN To not become the poltiics subreddit where your karma is dictated by how closely you hew to the party line.</comment>


Show HN: Yet Another Hacker News Client Made with React Native and Redux - <AUTHOR> https://github.com/abhishekbhardwaj/Yet-Another-Hacker-News-Client <comment><USER2> Nice work and write-up.

<comment><AUTHOR> Thank you!

<comment><USER3> Shameless plug, I built a native Mac client for HN a while ago :) [http://mackernews.com](http://mackernews.com)

<comment><AUTHOR> Looks cool. Is it open source? You doing all of the auth work manually?</comment></comment></comment></comment>


Self-publishing on the rise (no more 'vanity' press) - <AUTHOR> http://online.wsj.com/article/SB10001424052748704912004575253132121412028.html?mod=WSJ_LifeStyle_Lifestyle_6

<comment><USER2> So we're moving toward a loosely coupled network of small, focused companies (or "branded" individuals) providing services big publishers used to provide, like editing, copy-editing, typesetting, marketing, book design, etc., and other companies that'll remove from authors the logistical burden of orchestrating all these moving parts. That's great. But these services have to be paid for, and authors need to eat while they're writing. So who'll foot the bill and finance the authors? Investors? Grants? And is it even reasonable to expect future readers to pay for books? I hate to say it, but I won't read a book with advertisements in it. We're in for a storm.

Edit: Maybe I _will_ read a book with advertisements in it. In a sense, I've already done it. Cory Doctorow's _Little Brother_ and _For the Win_ both begin each chapter with "bookstore dedications". This wasn't advertising they paid for, but something he did on his own. Not only did I not find it intrusive, but I found it sort of endearing. There's a lot of unexplored territory in the field of advertising.

<comment><USER3> What are you talking about? Who financed authors previously? 99 percent of the time it was their day jobs or their previous income/royalties. Advance payments are rarely big enough to live on for unknown (ie, poor) authors. And where did you get the idea of advertisements from? These vanity presses pay much higher percentage royalties than normal publishers and so total readership is actually less important.

<comment><USER4> _> And where did you get the idea of advertisements from?_

There was a recent submission that touched on this: <http://jakonrath.blogspot.com/2010/01/booty-call.html>

</comment></comment></comment><comment><USER5> To my mind the interesting thing here is it leaves writers less beholden to the decisions of editors than has been the case prior. While there are MANY benefits to going through a publishing process, especially at larger houses, being denied because none of the editors get it, even for some already big name authors, forces anyone who wants to write full time to take editor tastes into account at least somewhat when picking projects.

This option lets same writers, though more so the ones who already have a fanbase, have an alternate choice from fighting through finding a publisher who will take your book.

Actually, I wonder if kickstarter, or perhaps something similar but designed specifically for fiction, could work as a method of testing a market for the viability of a book to be published in eformats.

</comment><comment><USER6> I'm not sure where the "no more 'vanity' press" bit comes from; I'm certain most self-published titles are still fairly awful.

Still, the bit about Amazon now giving 70% of e-book revenues directly to the author for books priced between $2.99 and $9.99 does strike me as tempting. That could be a real gamechanger for books with an expected readership in the thousands. Does anyone have any experience with this scheme?

<comment><USER7> Perhaps customer ratings + reviews mitigate the rise of awful titles dominating the space. Having said that, sometimes publishers miss golden opportunities (e.g. Rowling). On the flip side, there is also junk being published by the big publishing houses.

I don't have experience with Amazon's self-publishing system, but I can tell you about how one recent author published on Fifobooks (my startup) even though his book is also available on the Kindle store. The book, Crude Behavior, is a political satire in comic form. Because it is in full color, the author and illustrator wanted to make it available on as many devices as possible, especially ones that support color. His book, when viewed on a color device (iPad, android, laptop, etc.) comes alive compared to how it looks on a b+w Kindle. You can see some screenshots here: [http://joubert.posterous.com/crude-behavior-a-political- sati...](http://joubert.posterous.com/crude-behavior-a-political-satire-in- full-col)

</comment></comment><comment><USER8> I help run a small press, we publish books bundled with music albums.

<http://monofonuspress.com>

The single biggest problem we have is promotion.

The music is easy by comparison, as bands play concerts all the time. Authors can't book more than a few readings to promote, placing books in stores is almost worthless when the author is unknown.

The publishing industry will have to change quite a bit before the big players are replaced. Promotion and marketing along traditional media is locked up pretty tight, and online increasingly so. Remember that for every great book we're selling there are hundreds of books from crap to gold hyped by professional promoters with more money, connections and experience.

It's rough out there.</comment>


Using CSS3 3D perspective, animation and reflection to render DVD cases - <AUTHOR> http://simurai.com/post/1117296141/css3-3d-animation

<comment><AUTHOR> For those that don't care about the technical blurb and just want the eye candy, here's a link to the demo: <http://lab.simurai.com/css/stars/></comment>


Starbucks Plans to Serve Beer & Wine - <AUTHOR> http://www.beer-universe.com/beer-education-article/2010-10-18/Starbucks-Plans-to-Serve-Beer-and-Increase-Revenue/

<comment><USER2> Apparently the first beer and wine Starbucks is going in here:

[http://maps.google.com/maps?f=q&source=s_q&hl=en&...](http://maps.google.com/maps?f=q&source=s_q&hl=en&geocode=&q=1600+Olive+Way,+Seattle,+WA&sll=37.0625,-95.677068&sspn=62.70117,106.523437&ie=UTF8&hq=&hnear=1600+E+Olive+Way,+Seattle,+King,+Washington+98102&ll=47.61856,-122.323676&spn=0.006639,0.013003&z=17&layer=c&cbll=47.61928,-122.324815&panoid=uFZkVOcPm4w_SjOd4ocdsQ&cbp=12,315.43,,0,7.3)</comment>


Ask HN: Is it better to be collaborative or secretive when releasing an app? - <AUTHOR> Hey guys,
I've been working on an app, and I'm about two weeks from it ready to demo. I've always been confused about launch... Apple seems to favor keeping things a secret and building up to a big reveal, while the other camps touts release early and release often.
Should I be releasing a demo teaser or should I wait and do it all in one lump-sum? What is the criteria for deciding this? <comment><USER2> A few remarks:

0\. Odds are that your business is not Apple. Odds are that your business interests are at least somewhat adversarial to Apple's because Apple wants some of your businesses money.

1\. My typical reference article is: [https://blog.ycombinator.com/minimum- viable-product-process/](https://blog.ycombinator.com/minimum-viable-product- process/)

2\. My standard suggestion is to _consider_ building a webapp before an app store app because it allows showing the app to users without going through the approval process; and if the app is successful, a website will be needed to support it; and a webapp can be iterated in a matter of minutes versus weeks or months or never for app store approval.

Good luck.

<comment><AUTHOR> A good read. Thanks for the link. I don't think I'm able to build a webapp version because the technologies & form-factor for this app is exclusive to smartphones.

<comment><USER2> What about the problem? Can it be partially solved without a smartphone? Can it be partially solved by a smartphone using its browser? What smartphone systems actually solve the problem versus providing a basis for additional features?

For example, geolocation makes it easier to review a restaurant, but it is not necessary in order to do so. Access to the user's contacts makes it easier to send people messages, but it is not strictly necessary because typing the information in is an option.

Another way of looking at it is the difference between solving a problem (possibly using a smartphone) and writing an app. Writing an app has a lot of tail wagging the dog...getting through the review process is just part of it. The second part is getting people to notice the app...all apps on the app store are presented in a standardized format. That's great for Apple and Google. It's great for lousy apps because they look pretty much like good apps. It is terrible for any good app with a story to tell, because there is no way to tell that story.

</comment></comment></comment><comment><USER3> Do you have an audience who is at least aware of the app's problem space, or is it just you who knows about that app?

<comment><AUTHOR> It's one of those latent needs, in the way that Snapchat and Facebook doesn't really solve a problem going in (Not that I'm comparing my app to theirs, they just most easily come to mind). I've shown it to a few people in my circle, and they think it's kind of cool.</comment></comment>


Ask HN: Seeking collaboration on developing alternate economic system - <AUTHOR> The present economic system makes us work damn too hard. It's not good for a majority of people. I am working on developing an alternate economic system. I own ad-tech company and don't want to be remembered as eyeball dealer. Who is looking to collaborate? We can crowdfund the idea, purchase an island, and get volunteers who are ready to leave their country and move to our Island. We'll iteratively develop a new economic system which will solve all the problems which limit current economic system. <comment><USER2> there is no need for an island purchase (or crowdfunding). A new economic system is already partially here with over a billion people participating (they create over a trillion USD/year in economic value). It is the volunteer economy. It just needs couple of tweaks to end the bs we live in today.</comment>


App sends and receives morse code using the iPhone flashlight and camera. - <AUTHOR>

Fork the code and test it out for yourself. https://github.com/chrismeehan/MorseCode/tree/FinalMorseCode2<p>I'm the developer who designed this app. Feel free to ask me any questions about the code that makes it work, or about the app in general. <comment><AUTHOR> Hey, sorry I didn't know how this website worked at first. Here's the right link [https://news.ycombinator.com/item?id=7173782](https://news.ycombinator.com/item?id=7173782)

</comment><comment><USER2> Hi Chris,

Awesome idea - do you think it has any non-toy applications? Also related, do you know how far you see see the light away from if say you were in the middle of the ocean after a plane wreck (I have no idea about the physics!)

<comment><AUTHOR> It can read from a distance of up to 100 feet at night.

</comment></comment><comment><USER3> Neat. How many letters per minute?

<comment><AUTHOR> Roughly 60</comment></comment>


Offer HN: Advice on improving your website's design and usability - <AUTHOR>

I launched a service called Office Hours to provide advice for improving the design of websites for a reasonable flat-fee. I'd like to build out my public facing portfolio, and this offer will allow me to do this.
I've been UX designer for 10+ years and whether you are looking to add some polish to your site or due for an overhaul, I'd be happy to give you some tips and point you in the right direction.
To receive a free webpage review, simply choose the "Public" option when submitting your website and $50 (the cost of a single page review) will be deducted from the final price. I'll complete the free review in 10 days or less. You can submit your webpage here: https://www.dustinkirk.com/officehours/
This offer is good until the end of today (Dec 5th, 2014).
Thank You,
-d- Dustin Kirk <comment><USER2> For $50, I'd be happy to tell you what to improve on your site.

1) Not mobile-friendly (!!!!!!!)

2) Font too small.

3) Multiple walls of text.

4) Too much text in general (some of it repeats itself, some says nothing at all).

Seriously. Don't call yourself a UX-design expert and put out something that's lacking the absolute most basic aspects of good design.

</comment><comment><USER3> You submitted this exact thread yesterday: [https://news.ycombinator.com/item?id=8702904](https://news.ycombinator.com/item?id=8702904)

<comment><AUTHOR> True, just thought I'd share it again... it is a new day.

<comment><USER3> That's usually considered spam.</comment></comment></comment>


Does Ubuntu Touch consume less power than Android? - <AUTHOR> http://askubuntu.com/q/476137/82315#content <comment><USER2> So someone asks if Ubuntu Touch consumes less power, and another person replies basically "Maybe, nobody knows yet."

How is this Hacker News worthy?

</comment><comment><USER3> This doesn't say how much less power. Is it significant? iOS also doesn't have a VM but that doesn't make it easier on the battery vs Android, so why would that be the reason for Ubuntu? Perhaps Ubuntu just doesn't have a lot of services running in the background currently?

<comment><USER4> Not sure why you were downvoted, this really is a useless submission.

</comment></comment><comment><USER5> While true, that's like saying i++ is more efficient than i = i + 1 in an application that makes several SQL queries per run.

You can micro optimize areas of code for better CPU (and thus battery) efficiency, but the largest use of power in a phone is the cellular radio, WiFi, bluetooth, screen, digitizer, and other bits of hardware. The CPU makes a difference, but most likely not in a noticeable way</comment>


Spaceflight from the Backyard - <AUTHOR> http://www.ralfvandebergh-astrophotography.simpsite.nl/home <comment><USER2> Thought it was going to be about Microlaunchers ( [https://www.academia.edu/40142469/Microlaunchers_Technology_...](https://www.academia.edu/40142469/Microlaunchers_Technology_for_a_New_Space_Age) )

<comment><USER3> I thought it was going to be about people trying to launch themselves into space with home made rockets.

Made me think of the 1970's TV show _Salvage 1_ :

"Harry runs a salvage operation, in which he and his partners reclaim trash and junk and sell it as scrap (or as other things). Harry also has a home-made spaceship which he sometimes uses to reclaim junk satellites."

[https://www.imdb.com/title/tt0078681/](https://www.imdb.com/title/tt0078681/)

</comment></comment><comment><USER4> This is amazing. Is there a forum/group somewhere that shares these types of things? Would love to learn more about it and perhaps do it myself

<comment><USER5> I've seen similar photos in telescope, astronomy, and ISS groups on Facebook... These groups are pretty interesting overall, too. FB groups also have a really long tail... Don't be surprised if one pops up, "Your photos of the ISS, medium to high detail" or something like that.

</comment></comment><comment><USER6> Ralf Vandebergh does amazing photography, but he is not participating in _space flight_.

The title in its current form is misleading.

<comment><USER7> Haha. I wasn't __disappointed __the story wasn't literally about 'flight' into space from the 'backyard', (which is insane), so the phrasing didn't occur to me. Just another example of literary license which could have benefitted from more word-smithing.

'Space flight' from the backyard.

Seen from your back yard: space flight

Etc

</comment></comment><comment><USER8> Anyone could offer some insights on how expensive it is to really do this in one's backyard and where the backyard is best located? I remember joining a astrophotography group a few years ago, and the equipment setup and scouting process could be quite a burden.

<comment><USER9> @location: Light Pollution has gotten worse over time (with the exception of a few countrys with policies regarding that). VIIRS Data might offer a basis for choosing a backyard: [https://www.lightpollutionmap.info/#zoom=3&lat=4695853&lon=-...](https://www.lightpollutionmap.info/#zoom=3&lat=4695853&lon=-1010080&layers=B0FFFFFTFFFFF)

</comment></comment><comment><USER10> Saw this guy referenced by Scott Manley the other day. Ralf Vandebergh has apparently imaged the USA 24 spy satellite that purportedly took the (classified?) photo that Trump posted to Twitter.

<comment><USER11> USA-224 and here's the video for those interested: [https://www.youtube.com/watch?v=JRLVFn9z0Gc](https://www.youtube.com/watch?v=JRLVFn9z0Gc)

</comment></comment><comment><USER12> This reminds me of the spy satellite thing that has been making the rounds lately. If this guy can see a person in LEO from earth, then it's no surprise that the government can see a person on earth from LEO.

</comment><comment><USER13> For Reddit try old.reddit.com

</comment><comment><USER14> Absolutely stunning!

</comment><comment><USER15> Grossly misleading title. Literally nothing to do with space _flight_.</comment>


Is Google cooling on open-source foundations? - <AUTHOR> https://www.protocol.com/google-open-source-istio <comment><USER2> > given Kurian's mandate to overhaul the group's famously engineering-driven > culture in favor of a more enterprise-oriented approach

TIL that engineering culture is mutually exclusive to enterprise approach</comment>


Show HN: SoundLogin – two-factor authentication via sound notifications - <AUTHOR> https://www.soundlogin.com/ <comment><USER2> Constructive criticism: A better soundtrack / voiceover is key. This one had too many things going on 2\. You need to explain how the sound thing works. Is it frequency or amplitude based? (would help me understand what environment it would and would not work in) 3\. I tried a demo and it sent the test code but showed me a different number on the screen.

<comment><AUTHOR> Thank you for feedback! 1) Yes, we are planning to add more sounds. We have 5 different melodies for now (in Settings), but we'll try to add more and also add an option for custom soundtrack as well. 2) The sound technology is sort of acoustic watermarking. It is based on multicarrier spread spectrum and it uses simple masking mechanism to hide behind host audio signal. It should be quite robust in various noise scenarios and multipath propagation (although every system has limitations) 3) Did you enable 'encryption' in settings? For web-test do not turn on 'encryption' in app settings. If you enable encryption the decoder shall detect wrong sequence (even if your password is blank). We use it to protect our acoustic channel. If an adversary will try to intercept your 'encrypted' acoustic signal he/she will not be able to decipher it and even know if the encryption is enabled or disabled. On the other hand, SoundLogin has internal error check mechanism - probability that the decoder will come up with wrong number because of channel noise is less than 10^-10.

<comment><USER2> Yes! I was using it with encryption on. I was playing around with it a little bit.

The digital acoustic watermarking idea is awesome. Rather than have a weird buzzing noise, overlaying digital information over these codes is great.

If you've got enough traction, you should get a US corp built, because this is a trust-based product (right?). Having an OOO company is a little scary for US users.

<comment><AUTHOR> Thank you, digital_ins. Yes, I know it's scary. If we get some traction - we'll probably convert the SoundLogin project to open-source. We are already talking with potential backers. I think open-source is the best route for trust-based product.

</comment></comment></comment></comment><comment><USER3> Can someone help me understand the benefit? Maybe I'm missing something. When the video says currently "Authenticating with OTP is not really easy", is it saying that typing 4~6 numbers is not easy?

<comment><AUTHOR> Benefit is convenience. 2FA requires you to enter 6-8 digits (4 is not secure). If you have to do it every time you login to your account (e.g. AWS, Github, Twitter). It may be really annoying. So, we try to improve 2FA usability.

</comment></comment><comment><USER4> Although not so fancy, I use KDEconnect's clipboard sync for the same task.

I copy the verification code on my mobile (all otp apps do it automatically) and paste on the computer.

</comment><comment><USER5> If you can both read and write text fields, how do I know you're not stealing my passwords?

Also, why not a javascript bookmarklet?

<comment><AUTHOR> For now, we have to rely on browser extensions (maybe in the future some services will integrate our scripts directly on login pages). Browser extensions are in JavaScript. The code is available to everyone for review. To reduce concerns we do not use any analytics or tracking code in browser extensions or mobile apps. Thanks for the tip on bookmarklets, we'll check if it is technically feasible.</comment></comment>


Improve your jQuery - <AUTHOR> http://www.tvidesign.co.uk/blog/improve-your-jquery-25-excellent-tips.aspx Doing some research for a new project and found this excellent jquery tip article. <comment><USER2> 10\. Use chaining properly

Initial reaction: "Boo, you suck". It's called local variables. I've found chaining can sometimes lead to bad readability of code. Chaining is good when doing things like setting multiple attributes or .click(function(){}).click()

There has to be a line drawn somewhere

It is of course missing at least one:

"Never do in jquery what your browser can do internally"

How many of you have ever done this?

$.post(...., function(data){

      var d = $(data);

      d.click();

      $(..., d).doSomething();

      applyHandlers(d /*context*/);

      $("content").append(d);

});

Yes well the above is TERRIBLE coding. Because d is now parsed, built, and stored by jquery... in the javascript space. If you were to do the following:

{

       $("#content").append(d);

       var d = $("#d'sId");

       // do rest of work

}

You would make your code 1) faster, and 2) use less memory in the javascript space. Thus large ajax requests process much faster. Thus don't do in jquery what your browser can do natively, like build and store dom.</comment>


George Orwell: New Words - <AUTHOR> http://www.orwell.ru/library/articles/words/english/e_words

<comment><USER2> Very thought-provoking. Spending so much time reading what's new, I had almost forgotten the pleasure of reading what's good.

<comment><AUTHOR> Well said. I've been rereading a lot of Orwell's stuff lately -- it's some of the most lucid writing I've ever run into, and it's aged remarkably well.

</comment></comment><comment><USER3> "I have written all this down hastily, and when I read through it I see that there are weak patches in my argument and much of it is commonplace."

Yes.</comment>