SP686C-M-40i 4G卡下新建逻辑盘失败

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

SP686C-M-40i 4G RAID卡新建逻辑盘失败问题分析

问题现象

在OpenUBMC251230环境中,使用SP686C-M-40i 4G RAID卡尝试通过Web界面创建新的逻辑盘时失败,前端提示"操作失败"。根据系统日志显示,创建任务启动后立即报错,最终返回执行失败。

日志分析

从提供的日志信息可以看出完整的执行流程和错误发生点:

  1. 任务启动阶段

    [Storage]Start CreateVolumeInNewArray of Controller0
    Create task[Id: 2357740497, ..., State: New] successfully
    Update task[Id: 2357740497, ..., Progress: 10, State: Running] successfully
    
  2. 错误发生阶段

    hardware ERROR: hs_misc.c(678): process_histore_cmd: process_histore_cmd return error 0x7f9
    hardware ERROR: sml_ld.c(251): sml_create_ld_on_new_array failed, ctrl index = 0, return 0x1444
    [Storage]Failed to CreateVolumeInNewArray, and return: 5188
    
  3. 任务异常结束

    task[Id: 2357740497, ..., State: Exception] will be destroyed after 10 minutes
    

错误码解析

根本错误码:0x7F9 (2041)

这是由process_histore_cmd函数返回的核心错误码,表明华为自研RAID控制器(Histore)命令处理失败。这个错误通常出现在使用sml_histore封装库与华为RAID卡通信时。

中间错误码:0x1444 (5188)

这是由sml_create_ld_on_new_array函数返回的错误码,属于SML(存储管理库)层面的错误。该错误码是上层应用最终接收到的返回值。

可能原因分析

根据上下文信息和相关架构知识,此问题可能由以下原因导致:

  1. RAID卡固件不兼容

    • SP686C系列RAID卡可能需要特定版本的驱动或固件支持
    • 当前OpenUBMC版本可能未完全适配该型号RAID卡
  2. 通信协议问题

    • SP686C卡可能采用MCTP协议进行带外管理
    • 系统未能正确建立与RAID卡的MCTP通信连接
  3. 硬件抽象层(HAL)配置问题

    • sml_histore库未能正确识别或初始化控制器
    • 控制器索引(ctrl index = 0)虽然存在但状态异常

解决方案建议

1. 版本兼容性确认

  • 检查SP686C-M-40i 4G是否在OpenUBMC 25.12版本的支持列表中
  • 确认RAID卡固件版本是否满足最低要求

2. 日志深入排查

  • 收集完整的hwproxysmld服务日志
  • 检查MCTP注册状态:mctp_client list
  • 查看RAID卡检测情况:lspci | grep -i mega

3. 验证性操作

# 检查存储服务状态
systemctl status bmc.kepler.storage

# 查看RAID控制器信息
redfish-systemstoragecontrollers

# 检查SML服务是否正常
skynet ps | grep smld

4. 参考类似问题处理

根据知识库中类似问题的处理经验(如topic/4210),建议:

  • 确认Web前端传递的参数(特别是条带大小等配置)是否符合SP686C卡的要求
  • 检查是否存在多RAID卡环境下的初始化顺序问题

5. 升级与补丁

  • 参考openUBMC最新版本(如25.06)中关于SP686C卡的支持增强
  • 考虑应用相关hotfix或升级到包含该问题修复的版本

推荐后续步骤

  1. 收集完整的一键日志
  2. 核对硬件兼容性列表
  3. 联系openUBMC社区参考已知问题(可参考https://discuss.openubmc.cn/t/topic/4307)
  4. 尝试命令行方式创建逻辑盘以排除前端问题

建议优先确认当前环境对SP686C-M-40i 4G卡的兼容性支持情况,这是最可能导致此类底层命令失败的根本原因。

相关链接:

  1. 后置背板上的两个硬盘组raid失败
  2. 【问题求助】Raid卡通信失败 & 上电后7分钟内Raid卡和Raid卡下的盘无温感
  3. 硬盘日志收集错误日志咨询
  4. 伙伴过渡包刷到华为bmc后,bmc起不来
  5. storage | 文档中心 | openUBMC