直通内置硬盘disk50的信息被发送到了disk45上问题分析
更新时间: 2026/05/28
在Gitcode上查看源码

问题背景

  • 单板类型:NA;
  • 软件版本:NA;
  • 涉及功能:硬盘信息;
  • 触发条件:CSR里的配置 Bus Device Function 要跟带内的一致。
  • 业务表现:预期所有硬盘信息正确显示;实际直通内置硬盘disk50的信息被发送到了disk45上。

问题复现步骤

  1. 如图,前置12盘背板接raid卡(未画出),内置m.2的slot50插了一块硬盘,后置4nvme背板接了4个nvme背板。
  2. 接在m.2(bc83msma)slot50的硬盘信息在web上获取不到,bios将信息发送到了slot45上了。

关键日志信息

查看数据路内容,bios将信息发送到了slot45上了。

定位过程

  1. 分别查看两个背板中pcieaddrinfo信息,定义如下:
  2. mdb对象信息如下:
  3. 删掉4nvme bc83nhbf背板csr中的pcieaddr_sas_1内容,bios可以正常发送slot50信息。
  4. 带内OS查两个盘的BDF:

问题原因

CSR里的配置 Bus Device Function 要跟带内的一致。现在CSR里的直通盘丝印Slot45和Slot50重复了,转16进制都是 38:05.0。

解决方案

尝试把4nvme的pcieaddrinfo中的bdf改成别的,disk50发送正常了。