IT之家 3小时前
Linux 7.3发布前夜,三星990 PRO的“隐藏Bug”被紧急修复
index_new5.html
../../../zaker_core/zaker_tpl_static/wap/tpl_keji1.html

 

IT 之家 10 月 20 日消息,科技媒体 NeoWin 昨日(10 月 19 日)发布博文,报道称 Linux 7.3 内核已合并补丁,针对三星 990 PRO、990 EVO Plus 固态硬盘,修复兼容该系列 " 即时就绪 "(Immediate Readiness)功能。

IT 之家注:" 即时就绪 " 并非三星独有的 SSD 加速技术,相关标志由 PCIe 4.0 引入,表示设备复位后可以立即响应系统的配置访问,系统据此跳过等待,以缩短复位后的恢复过程。

根据 Linux 7.3 内核的相关修复说明," 设备声明的能力 " 与 " 固件实际行为 " 存在不一致问题:

涉及设备/固件报道中的情况
三星 990 PRO,旧版固件如 1B2QJXD7声明支持 Immediate Readiness,但功能级复位后,配置读取在 7ms 内未返回有效数据
三星 990 PRO,固件 8B2QJXD7修复说明指出,该版本可以在复位后立即响应
三星 990 EVO Plus,固件 2B2QKXG7被报告存在类似问题

该修复程序现已合并到 Linux 7.3 版本中,在 Git 信息中写道:

三星 990 PRO [ 144d:a80c ] 宣称具有 " 立即就绪 " 功能,因此 pcie_flr ( ) 在 FLR 后不会等待,但硬盘会在最多 7 毫秒内返回 ~0。

自提交 10baa9b4df40("PCI:恢复 BAR 时丢弃不必要的重试 ")以来,FLR 后的配置恢复会丢失,从而破坏硬盘的 VFIO 直通功能。固件 8B2QJXD7 在 FLR 后会立即响应,但较旧的固件(例如 1B2QJXD7)则不会,并且此处无法显示固件版本。

[ bhelgaas: 固件版本为 2B2QKXG7 的三星 990 EVO Plus [ 144d:a80d ] 似乎也存在同样的问题。 ]

这里涉及 FLR(Function Level Reset,功能级复位)。Linux 因为相信设备的 Immediate Readiness 标志,在 FLR 后不再等待;但设备实际上尚未准备好,接下来的配置恢复就可能失败。

修复方案上,Linux 的应对方式是 " 不再直接相信 " 受影响设备上报的能力,在功能级别重置后先等待,再恢复 PCI 配置。由于相关内核代码无法获取固件版本,这种处理避免了逐一识别固件,也有助于提升虚拟机直通的可靠性。

智客推

智客推

ZAKER 智客推 GEO | AI 时代的品牌认知解决方案

一起剪

一起剪

ZAKER旗下免费视频剪辑工具

相关标签

三星 it之家 固态硬盘 git ssd
相关文章
评论
没有更多评论了
取消

登录后才可以发布评论哦

打开小程序可以发布评论哦

12 我来说两句…
打开 ZAKER 参与讨论