部分nvme硬盘缺少资源归属问题分析
更新时间: 2026/06/02
在Gitcode上查看源码问题背景
- 单板类型:KP920;
- 软件版本:openUBMC 25.12 LTS;
- 涉及功能:构建,升级,nvme,web;
- 触发条件:版本包升级之后查看web页面的nvme盘信息;
- 业务表现:预期所有的nvme盘均正常显示资源归属,实际disk2-5能显示资源归属,但是disk6-9不显示资源归属。
问题复现步骤
- 构建25.12.xx安装包,升级安装包;
- 查看存储界面,发现disk2-5能显示资源归属,但是disk6-9不显示资源归属;
关键日志信息
web页面信息显示: app.log日志信息:
定位过程
- 怀疑硬盘问题,将可显示资源归属的NVME盘和disk6-9的nvme盘进行调换,发现依然是disk6-9的NVME不显示资源归属,其他槽位上的可以正常显示;
- 代码排查,在storage组件中storage/src/lualib/nvme/nvme_object.lua文件打日志发现没有资源归属得ComponentType是8,在做匹配时,硬盘得addr_CompType是2,但是ref_Type是8匹配失败就更新不了;
- 查看dump_info\AppDump\frudata\mdb_info.log文件中显示
- 从上述截图中可以看出,硬盘ComponentType没有匹配成功,正常显示资源归属的nvme盘ComponentType为2,不能正常显示的硬盘ComponentType不为2;
- 进一步确认nvme盘所在的sr文件中 Nvme_1对象的RefComponent属性关联的Component对象,确认这个Component对象的Type是否为2;从app日志上看是8;如果Component对象的Type为2则需要进一步确认加载的sr文件是否与硬件型号匹配。
问题原因
客户加载的sr文件为Component_PCIeCard_0101081009.sr,该sr文件并非对应的型号的csr,csr加载的不正确导致NVME信息加载出错。
解决方案
Connector对应的BomID配置为disk6-9的硬盘信息;配置完成后重新构建出包,升级后查看web页面的资源归属信息是否正常显示即可。