Linus Torvalds 称英特尔的补丁是垃圾

2018-01-23 10:30:09 +08:00
 chih758
英特尔向内核递交了补丁修复 Meltdown 和 Spectre 漏洞,但与间接分支预测( Spectre variant 2 )相关的补丁遭到了 Linux 之父 Linus Torvalds 的无情抨击,称该补丁是彻彻底底的垃圾。补丁会影响性能,所以英特尔不想默认启用,因为这会让基准测试结果显得很糟糕,因此英特尔的做法是在启动时候选择。Linus 认为即使从技术角度看这也是完全错误的。Linus 说,“有人正以不明的理由推动彻底的垃圾”,他称补丁是真的垃圾,“他们在做疯狂的事情,在做一些毫无意义的事情”,TMD 究竟发生了什么?

Intel 之前的 Meltdown 补丁想把 AMD 拉下水,把补丁的启用范围设成所有 x86 处理器,现在又搞这种。

https://www.solidot.org/story?sid=55297
8264 次点击
所在节点    程序员
30 条回复
Flygoat
2018-01-23 20:39:22 +08:00
@geelaw #12 我也想不通为什么 Linus 拒绝 Grsecurity 或者 PaX 之类的安全技术进入主线内核。。。
chih758
2018-01-23 21:00:16 +08:00
searene
2018-01-23 21:17:51 +08:00
“有人正以不明的理由推动彻底的垃圾”

原谅我笑了,这句话翻译的很好很传神。
bukip
2018-01-23 21:23:38 +08:00
"英特尔的做法是在启动时候选择"

没明白,为什么启动时候选择就垃圾了?
feverzsj
2018-01-23 21:28:09 +08:00
intel 的补丁确实是垃圾,数据中心应用场景性能下降 20~30%是普遍现象,但现在暂时没有其他补救方法,如果你的节点是自己独占的,那么的确没有必要开启,这也是 linus 鄙视 Grsecurity 原因,因为它们都没有从根本上寻找解决方法
mason961125
2018-01-23 21:31:44 +08:00
感觉 Linus 喷 Intel 的原因在于,Intel CPU 的锅,最终背的是 Linux。
wangyucn
2018-01-23 21:35:14 +08:00
@bukip

解读:

>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.

(搬运自 reddit 和 hacker news,
https://www.reddit.com/r/sysadmin/comments/7s47h9/linus_torvalds_is_not_happy_about_inte
choury
2018-01-23 21:39:59 +08:00
@Flygoat 就像每次取地址都对指针判空一样,虽然能防止 crash,但是根本方案还是代码不出错,不传空指针过来
bukip
2018-01-23 22:04:04 +08:00
@wangyucn 还是因为不同年代的 CPU
HandSonic
2018-01-23 22:34:05 +08:00
AMD, YES!

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/425131

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX