三周前对Linux内核的一次提交意外破坏了非x86 CPU的默认CPU安全缓解措施。在今晚的Linux 6.9-rc6发布之前,今天通过x86/紧急发送了代码,这种意外的默认破坏正在得到解决。
今天将合并到Linux Git的补丁将在默认情况下为POWER和Arm等非x86架构重新启用CPU安全缓解措施。
谷歌的Sean Christopherson在修复该问题的补丁中解释道:
“将x86重命名为CPU_MITIGATION,在通用代码中定义它,并强制所有体系结构(x86除外)启用它。如果SPECULATION_mitigations=n,则最近承诺默认关闭缓解措施,这有点忽略了“cpu_mitigations”是完全通用的,而SPECULATIONuMITIGATION是x86特定的。
重命名x86的SPECULATIVE_MITIGATIONS,而不是保留两者,并让它选择CPU_MITIGATION,因为对同一事物进行两个配置是不必要的,而且令人困惑。这也将允许x86使用旋钮来管理与推测执行不严格相关的缓解措施。
使用另一个Kconfig与已经定义了CPU_MITIGATION的公共代码通信,而不是让x86的菜单依赖于公共CPU_MITVATION。这允许为x86的所有缓解措施保持一个单一的联系点,而且尚不清楚其他体系结构是否希望在编译时禁用缓解措施。”
该补丁是当前x86修复拉取请求的一部分。如果内核配置为CPU_MITIGATIOS=n已禁用缓解,那么现在还有另一个补丁可以忽略“缓解=”内核引导参数。
Today’s x86 fixes pull also carries the patch further extending the range of AMD Zen 5 processor models.