即将推出的AMD微架构(考虑到AMD Linux硬件启用的时间和历史,可能是Zen 5…)正在引入总线锁定陷阱,作为与英特尔现有的拆分/总线锁定检测功能相匹配的功能。
AMD Linux工程师今天发布的补丁为“即将推出的AMD uarch”做准备,该补丁将支持此总线锁定陷阱功能。当启用AMD总线锁定陷阱时,如果内核外发生总线锁定(高于零环),它将引发异常。
其中一个补丁确实证实了AMD总线锁定陷阱功能“在功能上与英特尔相同”。英特尔长期以来一直在Linux下支持这种分锁和总线锁定功能,而现在可能有了Zen 5,AMD处理器也得到了支持。
几年前,英特尔的工程师们为Linux内核做了大量的准备,用他们的处理器进行分割锁检测,以警告或杀死有问题的应用程序。总线锁定检测功能也是如此。这两种方法都旨在警告/杀死由于性能处罚甚至潜在的拒绝服务问题而引起的违规软件。
AMD的新补丁建立在之前的英特尔拆分/总线锁定代码的基础上,并增加了对AMD处理器的支持。对于KVM虚拟机中运行的软件,还支持AMD处理器上的总线锁定检测。
This isn’t the most exciting of features for (presumably) Zen 5 but a nice minor addition for also matching the capabilities of Intel processors for allowing the kernel to better report/handle such locks for performance and denial of service reasons. On the Zen 5 micro-architecture front it’s also known publicly about the notable ISA additions as confirmed with the GCC Znver5 patch. Various other Zen 5 processor enablement for the Linux kernel remains ongoing as we await to see the next-gen Ryzen and EPYC processors later this year.