Live data from Hacker News

Linux page table isolation is not needed on AMD processors

lkml.org

191–200 of 298 posts

Re: Linux page table isolation is not needed on AMD processors

#191
post #186

Earlier quoted context omitted.

Yes. AMD didn't take shortcuts, and implemented the spec correctly. Intel took shortcuts, introduced bugs, and now to compensate for that the OS has to work around it in software, it's going to be slow. For years Intel has reaped the benefits of shortcuts for performance, while AMD has been implementing things correctly; now there is a correction. That's how the market works.

AMD doesn't exactly do an amazing job of avoiding gotchas in their CPUs. They have a bizarre idea of what writing zero to a segment register should do (resulting in info leaks that were only recently fixed on Linux), their demented leaky IRET is even more demented than Intel's, and their SYSRET's handling of SS is downright nutty. OTOH, Intel's SYSRET is actively dangerous and has resulted in severe security holes, a…

Can you post a few links maybe to the SYSRET issue mentioned? Just curious.

Re: Linux page table isolation is not needed on AMD processors

#192
post #74

Earlier quoted context omitted.

Do you really think enough people care about the ME / control of hardware in general / hardware that spies on you or is out of your control to influence the stock price of a company the size of Intel?

No. That's exactly what I'm saying. Most people don't care. Enterprise users do care because ME is useful for them. It's a feature, not a nefarious backdoor that the NSA made Intel include under the cover of darkness. They'll see this as a small problem that should be fixed and will ask Intel to do so. Intel will fix it, most everyone will move on. I don't think ME will take down Intel stock, and neither will this pa…

That's the narrative, but consulted to a lot of enterprises, and I've never once seen ME in use. Servers have hardware like HPE iLO, and desktops will use OS based agents. And failing that they'll use PXE boot and get rebuilt. The only discussion I've ever seen an Enterprise have about ME was the debate about how you deal with HPE's latest laptop security update.

Re: Linux page table isolation is not needed on AMD processors

#193
post #184

I sometimes wonder if verifying properties of the code we run wouldn't be smarter than relying on hardware isolation. Or at-least in addition to hardware isolation, so that there is two layers. By verify I'm thinking NativeClient-like or JVM isolation. Obviously, it would entail complete OS rewrite, or maybe partial...

You can't do secure computation on a CPU that is insecure in this way. The insecure CPU will ignore any abstractions you create in software.

Re: Linux page table isolation is not needed on AMD processors

#194

Earlier quoted context omitted.

> I can't really devote time to countering the unfounded assertion that every contended mutex must be a bug. Good, because that's not what I said. If you're heavily hitting futex convention you do have a performance bug, though. You might be confused with general contention that's being resolved with a spinlock rather than futex wait, though.

>> I can't really devote time to countering the unfounded assertion that every contended mutex must be a bug. > Good, because that's not what I said. It is literally what you said: >>> If you have a heavily-contended mutex you already have a major performance bug. If this is the kick in the pants you need to go fix it that's arguably a good thing ;) > You might be confused with general contention that's being resolve…

I literally said spin loop resolving is fast. Maybe read more than the single phrase you're pulling out of context to go on a rant about?

Re: Linux page table isolation is not needed on AMD processors

#195

This is going to have dramatic effect on the cloud computing market. It might make sense to make sure any VMs you run are on AMD processors or it can really hurt your performance and basically cost you more to do the same workload. It also seems, from early benchmarks, this can slaughter performance with databases.

Here's a Postgres benchmark on Skylake (supports PCID) showing a ~6% reduction in TPS.

http://lkml.iu.edu/hypermail/linux/kernel/1801.0/01274.html

Re: Linux page table isolation is not needed on AMD processors

#197

Essentially looks like Intel compromised (whether intentional or not is a different point) the design to get the speed boost that gave them the lead over AMD for the past decade. Will be interesting to see how all this plays out.

Other than leaking timing information though, is there any reason why this kind of speculative execution can't be secure? Apparently we're going to find out more in the coming weeks, but it feels strongly like Intel has made a number of mistakes leading up to this.

Re: Linux page table isolation is not needed on AMD processors

#198
post #36

At the meta level this is just a special case of "complexity is evil" in security. CPUs have been getting more and more complex, and the relationship between complexity and bugs (of all types) is exponential. Each new CPU feature exponentially increases the likelihood of errata. A major underlying cause is that we're doing things in hardware that ought to be done in software. We really need to stop shipping software…

Out of curiosity, which parts of .NET bytecode do you believe to be "too far abstracted from the hardware"? The object model, certainly, but you don't need to use that. On the other hand, the basic instruction set for arithmetic and pointers seems to be on the same abstraction level as WebAssembly to me.

Re: Linux page table isolation is not needed on AMD processors

#199
post #184

I sometimes wonder if verifying properties of the code we run wouldn't be smarter than relying on hardware isolation. Or at-least in addition to hardware isolation, so that there is two layers. By verify I'm thinking NativeClient-like or JVM isolation. Obviously, it would entail complete OS rewrite, or maybe partial...

This is an exciting research area. See unikernels, HaLVM (Haskell on Xen), MirageOS (Ocaml), OSv, Microsoft Singularity / Midori.

Re: Linux page table isolation is not needed on AMD processors

#200

Earlier quoted context omitted.

I think it will because it shows the downside of a monoculture. Hence big purchasers of CPUs will want to diversify. Also good for ARM vendors I suppose. Disclosure : bought AMD this morning before headlines saying "Buy AMD, short INTC" appeared.

Has there ever been a precedent for this? When there were major bugs in Intel CPU's (or drives, or RAM, or motherboards) did the likes of Amazon and Google invest in diversification? And has it affected stock prices meaningfully? My guess is that they'll see this as just another one off issue that can be fixed with software, then move on. For a large enterprise, monoculture that works is actually better than diversif…

Google has stated that they would move to the power9 if the performance claimes live up to the hype. That has yet to be seen.
Post reply on HN