问题描述
三星NVMe盘未加载厂商调速sr 144d
重现步骤
-
修改三星硬盘调速策略
- 查看属性,调速未更改
期望结果
调速策略更改
实际结果
- 查看属性,调速未更改
尝试过的解决方案
查看日志,未加载三星厂商的policy sr,而是加载的ffff
其余的盘加载正确,就三星加载不对
问题描述
三星NVMe盘未加载厂商调速sr 144d
修改三星硬盘调速策略
调速策略更改
查看日志,未加载三星厂商的policy sr,而是加载的ffff
其余的盘加载正确,就三星加载不对
答案内容由AI生成,仅供参考:
三星(Samsung)NVMe盘未能正确加载其厂商特定的调速策略SR文件 14140224_POLICY_144d.sr,而是错误地加载了默认策略文件 14140224_POLICY_ffff.sr,导致调速策略未按预期更改。
根据系统加载流程,NVMe盘的厂商识别依赖于 Vendor ID 字段:
0x144d0x19e5在知识库中有明确说明:
{"entity": "NVME_VPD_VENDOR_ID_FOR_SAMSUNG", "type": "data", "description": "NVME_VPD_VENDOR_ID_FOR_SAMSUNG is a vendor ID base for Samsung SSDs, set to 0x144d."}
{"entity": "NVME_VPD_VENDOR_ID_FOR_HUAWEI", "type": "data", "description": "NVME_VPD_VENDOR_ID_FOR_HUAWEI is a vendor ID for Huawei SSDs, set to 0x19e5."}
当系统无法正确读取或识别NVMe盘的Vendor ID时,将回退到默认策略文件 14140224_POLICY_ffff.sr(ffff 通常表示未知或默认厂商)。
加载触发条件:
Bom + Id + AuxId 组合动态加载SR配置文件。Id 固定为 "VPD",初始 AuxId 为 0。14140224_VPD_0.sr,用于读取NVMe盘的基本信息。协议与厂商识别:
VirtualVPDConnect 对象会从NVMe盘中读取 VPD(Vital Product Data) 区域信息,获取其 协议类型和厂商ID。Connector_ComVPD 对象的 AuxId 字段。Bom + Id + AuxId(如 14140224_POLICY_144d.sr)加载对应的厂商调速策略。当前异常表现:
14140224_POLICY_144d.sr(144d 对应Samsung)。14140224_POLICY_ffff.sr。Connector_Policy_0101030C 的 AuxId 值为 "ffff",表明 厂商ID未能正确识别。三星NVMe盘的厂商ID未被系统正确识别,导致
AuxId无法设置为144d,最终回退到默认策略文件ffff.sr。
NVMe-MI/VPD协议支持问题:
固件或驱动兼容性问题:
Chip_Temp、Chip_SSD 等读取VPD数据的芯片对象未能成功访问关键地址。数据访问失败导致回退:
“有5个确实加载失败,原因是访问对应的chip失败”
GetNvmeInfo 命令)检查能否正常获取 Vendor ID、Model、SerialNumber 等ProductInfo信息。14140224_VPD_0.sr 文件中对VPD地址偏移的配置是否与三星盘Data Sheet定义一致。在SR文件中显式指定 AuxId = "144d",绕过自动识别流程:
"Connector_ComVPD": {
"Bom": "14140224",
"Id": "PROTOCOL",
"AuxId": "144d" // 强制指定为三星
}
注意:此方法适用于测试验证,生产环境仍需解决自动识别问题。
Chip_Temp 或 Chip_SSD 读取失败的具体原因。verify_vpd_protocol() 函数执行时输出实际读取到的Vendor ID值。检查当前加载状态:
lsprop Connector_Policy_XXXXXX # 查看AuxId是否为"144d"
确认CoolingRequirement属性:
lsprop CoolingRequirement_1_60_XXXXXX # 检查TargetTemperatureCelsius是否为72
搜索加载源:
grep "14140224_POLICY_144d.sr" /var/log/*.log # 确认是否被加载过
三星NVMe盘未加载厂商调速SR文件的根本原因是:系统在加载流程中未能成功识别出该盘的厂商ID(0x144d),导致 AuxId 保持为默认值 ffff,最终加载了通用策略文件而非厂商特异性文件。
建议优先排查 NVMe-MI协议支持 与 VPD区域读取失败 的问题,并结合日志进一步定位是固件不兼容还是地址配置错误导致的访问失败。
相关链接:
需确认是否正确加载对应调速策略的SR文件
ManufacturerId识别错误

三星的厂商名和厂商ID获取目前有问题,待定位 可以从vpd_connector.lua代码中去加日志定位下
我找到原因了,三星大小写有问题,那个表里厂商都是大写的,但是读到的三星是首字母大写,匹配不上
好的,若问题解决,可关闭该帖子