已开启
[需求]: LTS版本新增支持华瑞数鑫 D3100s/D4100t/H3100s RAID 控制器 #573
sgguo创建于  25 天前
sgguo
sgguo
25 天前 创建

所属版本

openUBMC LTS

版本分支

openUBMC LTS

简要说明

适配华瑞数鑫基于 PMC RAID 芯片定制的 D3100s、D4100t、H3100s RAID 控制器,支持的功能有:

功能标题 功能描述
支持 RAID 卡健康状态查询 支持查询 RAID 卡健康状态,具备根据 RAID 卡自身告警更新健康状态的能力
支持获取 RAID 卡资产信息 支持获取名称、类型、序列号、型号、厂商
支持控制器规格信息管理 支持获取接口速率、固件版本、协议类型、缓存大小、RAID 级别、控制器模式(RAID/HBA/Mixed)、控制器内存容量、SAS 地址、PCIe 带宽、无电池写缓存使能状态、控制器是否支持带外管理、驱动名称与版本
支持控制器逻辑盘规格管理 支持组逻辑盘;支持逻辑盘写策略选项、逻辑盘 IO 策略选项(D3100s/D4100t 支持)
支持控制器运行信息管理 指定存储器启动盘的资源 ID;设置控制器模式(RAID/HBA/Mixed);收集固件日志
支持获取 BBU/超级电容健康状态 支持查询 BBU/超级电容健康状态,具备根据 BBU/超级电容自身告警更新健康状态的能力(D3100s/D4100t 支持)
支持获取控制器最小/最大条带值 支持获取控制器最小条带值、最大条带值
支持获取控制器 BDF 信息 BDF 值:Bus、Device、Function
支持获取控制器的四元组信息 支持获取 VID/DID、Sub VID/DID

前置条件

  1. 服务器已插有华瑞数鑫 D3100s、D4100t 或 H3100s RAID 控制器中的一张,BMC 运行正常;
  2. 待适配的带外管理库已集成到 storage 组件;
  3. 环境 OS 运行正常(用于比对 OS 侧与 BMC 侧信息一致性)。

系统用户

运维人员、网管、社区开发者。

主成功场景

  1. 用户登录 web,打开存储管理界面;
  2. 能查看 RAID 卡信息;
  3. 能查看已有的逻辑盘/物理盘信息;
  4. 能创建/删除逻辑盘;
  5. 能设置 RAID 卡工作模式;
  6. 能设置逻辑盘加速策略(D3100s/D4100t);
  7. 能执行日志收集。

非功能需求类型

可靠性要求、可维护性要求、可测试性要求、性能要求、兼容性要求(和以前版本及周边配套)。

兼容性影响评估

  1. 本需求为新增 RAID 控制器适配,复用 storage 组件既有 RAID 管理框架与北向接口(Redfish/Web/IPMI),不修改已有对外接口;
  2. 不改变已适配 RAID 卡的既有功能行为,新增 D3100s/D4100t/H3100s 独立识别与资源对象;
  3. 老版本 BMC 读取新增对象时按未知设备处理,不影响现有存储管理功能;
  4. 需保持与 openUBMC LTS 版本 mdb_interface 资源模型的兼容。

扩展场景(含异常场景)

周边依赖

  1. storage 组件;
  2. component_drivers / hwproxy(硬件自发现与带外管理通道);
  3. mdb_interface(资源模型定义);
  4. webui / web_backend / redfish(北向展示)。

约束

  1. D3100s、D4100t、H3100s 基于 PMC RAID 芯片定制,功能受硬件与固件能力限制(RAID0/RAID1/RAID5 等);
  2. H3100s 不支持逻辑盘写策略/IO 策略选项与 BBU/超级电容健康状态查询;
  3. 各控制器的具体能力以对应硬件与固件版本为准。
likedislike
openUBMC-robot
openUBMC-robot成员
25 天前 评论:

注意

此 Issue 需要负责人。 如果没有指派时, WeberChen 是默认的负责人

likedislike
openUBMC-robotopenUBMC-robot成员
25 天前 将 WeberChen 设为负责人
openUBMC-robotopenUBMC-robot成员
25 天前 添加了label:sig/sig-hardware
openUBMC-robot
openUBMC-robot成员
25 天前 评论:

欢迎来到 openUBMC 社区

Hey @sgguo233 , 感谢你对社区的贡献.

机器人使用手册

有关指令的使用,可以点击 说明文档 或 论坛 查看详情。开发人员可以在每个PR或Issue下方评论特定指令来触发机器人任务。您可以自助配置此仓库的 PR 合并规则,更多详情,请参阅机器人自助配置使用手册。

联系指引

有疑问可以联系 SIG: sig-hardware ,
维护者是: @changxingOpenUBMC, @nathanael, @xiaoxinglxs, @yelvsub ,
优秀贡献者是: @adellonzzy, @dli_bmc, @weiziang, @yelmh .

likedislike
openUBMC-robotopenUBMC-robot成员
25 天前 关联了看板:openUBMC 25.12 LTS 需求看板
openUBMC-robot
openUBMC-robot成员
25 天前 评论:

Issue 工作流介绍

社区的需求和缺陷的工作流状态处于纳管中。

类型 上个状态 下个状态 评论命令 谁可以操作
需求 待办的 已接纳 /todo2accepted SIG组: sig-release-management (maintainer)
需求 已接纳 开发中 /accepted2developing 仓库成员角色: Maintainer, Committer, Contributor, Owner
需求 开发中 待验收 /developing2UAT 仓库成员角色: Maintainer, Committer, Contributor, Owner
需求 待验收 已完成 /UAT2done SIG组: sig-QA (maintainer,committer)
需求 待办的 已挂起 /todo2suspended SIG组: sig-release-management (maintainer)
需求 已挂起 已接纳 /suspended2accepted SIG组: sig-release-management (maintainer)
需求 待办的 已拒绝 /todo2rejected SIG组: sig-release-management (maintainer)
需求 已拒绝 已接纳 /rejected2accepted SIG组: sig-release-management (maintainer)
likedislike
sgguosgguo
25 天前 修改了issue 的描述
sgguosgguo
16 天前 关联了pull request:适配 HRDT D3100s/D4100t/H3100s RAID 控制器
sgguosgguo
16 天前 关联了pull request:适配 HRDT D3100s/D4100t/H3130s RAID 控制器
sgguosgguo
16 天前 关联了pull request:适配 HRDT D3100s/D4100t/H3100s RAID 控制器
sgguosgguo
16 天前 关联了pull request:fix(storage): 修复PMC卡卷创建下拉绑定与逻辑盘详情重复展示,并支持局部热备关联多逻辑盘
sgguosgguo
12 天前 关联了pull request:添加多款PMC RAID卡型号并补充对应测试用例;提交各RAID卡测试报告
wangjian成员
11 天前 评论:

/todo2accepted

likedislike
openUBMC-robotopenUBMC-robot成员
11 天前 issue状态由 待办的 改变为 已接纳
sgguosgguo
8 天前 关联了pull request:feat(Drive): 新增SetHotspareTypeV2方法
sgguosgguo
7 天前 关联了pull request:新增华瑞数鑫8款PMC RAID卡测试报告(第二部分:D3154s-8i、D3102s-8i、D3101s-8i、D4154t-16i、D4158t-16i).
zhaotianli成员
3 天前 评论:

PR #779 回顾分析: feat(Drive): 新增SetHotspareTypeV2方法

仓库: openUBMC/mdb_interface
分支: LTS_support_hrdt_d3100s → br_release_openUBMC2512_20261231_LTS(sgguo233/mdb_interface_7697 → openUBMC/mdb_interface)
作者: sgguo233
合并时间: 2026-11-03 16:04:32 (+08:00)


1. AI 检视意见追踪

本 PR 有两轮 AI 检视记录:atomgit-bot 代码审查(2026-10-29 20:25,触发于 /ai review,结论"整体风险极低,除 1 条可选建议外无需修改即可合入",P0/P1/P2 为 0、建议 1 项)与 AI 一致性检视(Richardli25 账号发布,2026-10-30 12:30,结论"一致",置信度 0.9,详见第 2 节)。仅代码审查提出 1 条代码级意见。

# AI 发现 后续处理 说明
1 atomgit-bot(Low Priority/P3):VolumeIdList(U16[])入参缺少 example 字段,建议补 "example": [0],与同文件既有入参(含 V1 SetHotspareType 的 VolumeId)及 VolumeManage.json 的 DriveLists 写法保持一致 ✅ 已采纳并修复 开发者 sgguo233 于 2026-10-29 20:54(意见提出后约 26 分钟)回复"已处理";最终合入代码 Drive.json 中 VolumeIdList 已包含 "example": [0];讨论由 aaronlee 于合入前标记 resolved
指标 结果
AI 意见总数(含建议) 1(阻塞 0 项)
已采纳并修复 1
已回复说明 0
未响应 0

2. 人工检视补充

  • 检视人: Richardli25(zhaotianli,一致性检视)、aaronlee(lisiguang)、changxingOpenUBMC(changdexing)
  • 意见概要:
    • Richardli25:发布 mdb_interface 设计一致性检视报告(关联 topic 8117),7 项设计要素逐项校验 + 13 维度检查全部通过,结论"一致"(置信度 0.9);另提出 2 点流程建议:
      1. 设计帖(topic 8117)当时为"待评审"状态,建议设计评审正式通过后再合入,保持设计先行闭环 → 已满足:topic 8117 于 2026-11-03 11:33 评审通过("已在 hardware-sig 评审,审核通过",状态更新为【已评审】),PR 于同日 16:04 合并,时序上设计先行;
      2. PR 描述中 HotspareType 取值说明缺少 3=AutoReplace,建议同步修正避免误导 → 已处理:PR 描述最终版本已更新为"0 = None 1 = Global 2 = Dedicated 3 = AutoReplace",与代码 description 一致。
    • aaronlee:执行 /lgtm /approve(lgtm+approved 标签生效),解决 AI 意见讨论(resolved),/check-pr 检查通过后合入。
    • changxingOpenUBMC:评论 /lgtm(机器人提示无添加标签权限,未生效,流程性行为)。
  • 解决状态: AI 的 diff_comment 已 resolved;一致性检视 2 点建议均已实际落实(设计先行、PR 描述修正)。

3. 评审贴覆盖情况

评审点 来源 是否涵盖
评审点1:变更资源协作接口 bmc.kepler.Systems.Storage.Drive——新增方法 SetHotspareTypeV2(HotspareType U8 取值 0~3 含 AutoReplace 不变 + VolumeIdList U16[],请求签名 yaq,rsp 空,存量 SetHotspareType 完全不动) topic 8117 ✅ 已涵盖
评审点1:Web REST /UI/Rest/System/Storage/Drives/:id PATCH 新增 SpareforLogicalDriveIds 数组参数,按控制器类型分流调用 V2/V1 topic 8137 ➖ 范围外(Web/WebUI 侧仓库实现,不属 mdb_interface,需北向 PR 承载)
评审点2:Redfish /redfish/v1/Chassis/:chassisid/Drives/:driveid PATCH 热备设置 V1/V2 分流适配(无 Schema 变更) topic 8137 ➖ 范围外(Redfish 侧仓库实现,不属 mdb_interface)

覆盖统计: 1/1(本 PR 直接关联的评审贴 8117 唯一的 mdb_interface 评审点已完整实现,方法名、参数名/类型/取值、DBus 签名 yaq(y→U8, aq→U16[])、rsp 空均与设计精确一致,一致性检视亦确认"代码中缺失的设计要素:无";topic 8137 的 2 个评审点为北向 Web REST / Redfish 层内容,超出本 PR 范围,不计入缺失,其实现进展请关注对应仓库 PR)

4. 总结

  • AI 意见闭环质量高:唯一 1 条 P3 可选建议(补 VolumeIdList 的 example 字段)在 26 分钟内被开发者响应并实际修复,最终代码确认含 "example": [0],意见采纳率 100%,无未响应意见。
  • 人工检视补充价值:一致性检视确认实现与 topic 8117 设计精确一致,并提出的"设计先行"与"PR 描述取值补全"两点流程建议后续均被落实——设计评审通过(11-03 11:33)先于 PR 合入(11-03 16:04),PR 描述已补全 3=AutoReplace。
  • 开发者响应态度积极:快速处理 AI 意见;2026-11-03 更新代码时将版本号由 1.91.20 顺延至 1.91.21 并同步 CHANGELOG 条目(期间 1.91.20 已被 DumpLog 变更占用),处理正确,避免版本冲突;合入后执行 /publish 发布。
  • 整体流程健康:AI 意见闭环(提出→修复→resolved)、设计先行闭环(评审通过→合入)、CI 全绿(首轮"修改行数检查"失败后 /retest 通过)后经 /lgtm /approve 合入。本 PR 是 storage 组件 HRDT RAID 适配(storage MR !659)的前置依赖,其合入解除了 storage 侧 merge_model 一致性校验的构建阻塞。

此回顾分析由 AI (OpenClaw + GLM-5-turbo) 完成

likedislike