SP686C获取不到RAID信息

问题描述

SP686CRAID卡信息获取不到,物理盘也没有被成功点灯到RAID卡下。观察日志发现有MCTP相关报错,不知道是不是这个原因。

环境信息

  • 软件版本:基于社区3月份LTS

重现步骤

SP686C RAID卡+物理盘在位,上电状态下RAID信息异常。

期望结果

RAID信息显示正常

实际结果

RAID信息显示异常,物理盘无法正确下挂在RAID卡下。

分析结论

app.log内有Get BMC Mctp Info failed打印,在存储组件里。怀疑与此相关,需要帮忙分析定位一下

S920S21_2102315PGC10S1100001_20260613-1836.tar.zip.001.txt (5.7 MB)
S920S21_2102315PGC10S1100001_20260613-1836.tar.zip.002.txt (4.7 MB)

答案内容由AI生成,仅供参考:

结论

根据上下文,您遇到的“SP686C获取不到RAID信息”问题最可能的原因是MCTP通信链路被switch板固件屏蔽,导致BMC无法通过MCTP协议获取RAID卡信息。建议优先联系硬件工程师确认switch固件版本,并参考搜索结果[3]更换支持MCTP的固件。同时,可检查OS Ready状态及MCTP注册流程日志。

点击此处查看详细分析解答

根据您提供的上下文信息,针对SP686C RAID卡信息获取不到且出现“Get BMC Mctp Info failed”报错的问题,分析如下:

可能的原因分析

1. MCTP通信链路异常

SP686C系列RAID卡(如SP686C-M-40i Raid卡)通常采用MCTP over PCIe协议进行带外管理。从上下文多个来源一致指出,MCTP链路未正常建立是导致RAID卡信息无法获取的核心原因之一:

  • 搜索结果[3](适配3152/8204 RAID卡不显示详细信息问题分析)中明确说明:

    “使用mctp协议的3152,8204都出现无法显示详细信息,os下lspci能够查询到。……问题原因是switch板固件屏蔽mctp导致。解决方案:更换解决问题后的switch固件或替换支持MCTP的switch。”

  • 文档片段[3](SML存储管理库开发指南)也强调:

    “MCTP(华为、PMC)……需正确配置MCTP端点与sml_callbacks中的mctp_writeread回调。”

  • 您的日志中出现“Get BMC Mctp Info failed”,进一步印证了BMC与RAID卡之间的MCTP通信失败

2. switch板固件屏蔽MCTP

从**搜索结果[3]**的根因分析来看,switch板固件屏蔽了MCTP功能,导致MCTP端点(EID)无法正确添加至路由表,使得Storage组件无法通过MCTP协议访问RAID卡。

3. 控制器注册流程受阻

文档片段[1](Topic 3443)曾指出另一个类似问题(PM8204 RAID卡AC后概率性无信息),其原因是系统未触发OS Ready状态,导致RAID卡注册流程无法启动。虽然您的问题日志中明确是MCTP报错,但若MCTP链路本身正常,仍可结合该经验排查OS状态影响。

建议的排查方向

  1. 检查MCTP路由表
    在BMC侧查看mctp_routing_table,确认RAID卡对应的EID(如131)是否已成功添加。若未添加,大概率是switch固件问题。

  2. 验证switch固件版本及MCTP支持
    根据[搜索结果[3]],请与硬件/固件团队确认switch板固件是否开启了MCTP功能。若屏蔽,需更换或升级固件。

  3. 核对RAID卡SR文件配置
    确保RAID卡对应的.sr文件(如SP686C-M-40i)中已正确配置MCTP参数(EID、PhyAddr、VendorID),并按照SML开发指南的注册顺序初始化:

    sml.mctp_infos.add_mctp_info(ctrl_id, eid, phy_addr, vendor_id)
    sml.register_controller(ctrl_index, type_id, sml.SML_REGISTER_CTRL, {})
    
  4. 检查I2C链路(如果适用)
    部分SP686C变体可能使用I2C通道(参考文档[4]中SP686C-M-16i 4G的EEPROM告警问题),需确认BMC到RAID卡的I2C通路是否正常。

结论

根据上下文,您遇到的“SP686C获取不到RAID信息”问题最可能的原因是MCTP通信链路被switch板固件屏蔽,导致BMC无法通过MCTP协议获取RAID卡信息。建议优先联系硬件工程师确认switch固件版本,并参考搜索结果[3]更换支持MCTP的固件。同时,可检查OS Ready状态及MCTP注册流程日志。

没有Switch板的,请进一步帮忙定位看下MCTP为什么会出问题,日志里没有什么明显的线索。

确认BMC插卡问题:问题跟着BMC插卡走,换插卡后问题不再出现。插卡与带内通信有异常,分配不到EID,导致后续流程阻塞。