在Linux内核邮件列表,Linux创始人Linus Torvalds,称英特尔的漏洞补丁完全是垃圾。
云技术社区翻译了林纳斯的部分邮件内容:
2018-01-21,11:34 -0800,Linus Torvalds写道:
纯粹都是垃圾。
是英特尔公司真的打算做这个大便架构吗?有人跟他们谈过,告诉他们他们疯了吗?
请,任何英特尔的工程师和你们的经理谈谈。
你好像买了冷却剂。请加入适量的批判性思维。因为这不是那种用漂亮的图片来进行有趣的旅行的酷玩。这就是融化你大脑的那种。
并不是说这是一种讨厌的黑客行为。比那更糟。
这是大问题的一部分,speculation cpuid的内容显示,英特尔实际上似乎计划为meltdown做正确的事情(主要的问题是什么时候)。这并不是一个巨大的惊喜,因为它应该很容易修复,而且它确实是需要通过的大坑。不做正确的事情是完全不可接受的。
因此,IBRS的垃圾意味着英特尔不打算为间接的分支speculation做正确的事情。
老实说,这也是完全不可接受的。
这一点也不奇怪。这是整个“完全垃圾”问题的一部分。
IBRS_ALL对我来说非常明确地说:“Intel对此并不认真,我们将会有一个丑陋的黑客,我们不希望在默认情况下启用它,因为这在基准测试中看起来很糟糕。”
所以他们试图把垃圾推给我们。即使从技术角度来看,他们也完全错了。
我肯定有一些律师说“我们必须通过议案来防止诉讼”。但是法律上的理由并不适用于好的技术,或者我应该申请的好补丁。
废话!
你看到你正在谈论的补丁了吗?你应该让他们中的几个人记住你的名字。
补丁会做一些事情,比如添加垃圾MSR写到内核入口/出口点。这是疯狂的。这就是说“我们在努力保护内核”。我们已经在那里安装了retpoline,开销更小了。
所以这里有人说的不是实话。有人在推完全的垃圾,原因不明。抱歉,我得指出来。
如果这是关于在不同用户之间的实际上下文切换中刷新BTB,那么我相信你。但这并不是这些补丁所做的。
事实上,这些补丁完全是垃圾。
他们确实做了疯狂的事情。他们做一些毫无意义的事情。这让你所有的论点都可疑且可疑。这些补丁会做一些不正常的事情。
F*CK怎么了?
而这实际上忽略了一个非常重要的问题,即整个硬件接口实际上是由morons设计的。
它的错误设计有两个主要原因:
-“界面暗示英特尔永远不会修正它”的原因。
查看IBRS_ALL和RDCL_NO的区别。其中一个暗示是英特尔将解决一些问题。另一个没有。
你真的认为那是可以接受的吗?
-“没有性能指标”。
从微观架构中获得cpuid和标志的整个要点是,我们可以使用它们来做决策。
但是因为我们已经知道IBRS的开销是巨大的在现有的硬件上,所有这些硬件能力位都是完全的垃圾。没有人会使用它们,因为成本太高了。所以你最终不得不看“哪个CPU步进是这个”。
我认为我们需要比这垃圾更好的东西。
林纳斯
参考链接:
https://lkml.org/lkml/2018/1/21/192
声明:本文来自云技术之家,版权归作者所有。文章内容仅代表作者独立观点,不代表安全内参立场,转载目的在于传递更多信息。如有侵权,请联系 anquanneican@163.com。