背景
当前带外NVMe 盘场景固件升级采用串行升级,需要支持多盘并行固件升级降低耗时。
关联 ISSUE:https://gitcode.com/openUBMC/component_drivers/issues/207
整体方案
-
新增 StorageConfig 对象下的私有属性用于配置并行升级最大数量
-
storage 组件监听固件升级信号,解析 update.cfg 获取 ComponentID 和 ComponentIDEx
-
对 ComponentID 和 ComponentIDEx 匹配成功的 NVMe 盘,根据 PSR 配置的并行升级最大数量创建 fork 协程,启动并行的 NVMe-MI 带外升级任务,并记录升级结果日志
-
带外NVMe 盘固件并行升级最大数量默认值配置为 3
评审点
在已有对象 StorageConfig 下新增私有属性 NVMeParallelUpgradeCount,表示 NVMe 盘并行升级最大数量
详细描述
| 项目 | 内容 |
|---|---|
| 变化类型 | PSR 中私有对象 StorageConfig 下新增私有属性 |
| 应用场景 | 用于带外多 NVMe 盘场景下的固件并行升级 |
| 持久化类型 | 不持久化 |
| 操作权限 | ReadOnly |
变更属性
| 变更类型 | 属性名称 | 签名 | 只读 | 变化通知 | 属性描述 | 访问权限 | 属性来源 | 持久化类型 | 变更影响 |
|---|---|---|---|---|---|---|---|---|---|
| 新增 | NVMeParallelUpgradeCount | y | True | false | 带外 NVMe 盘固件并行升级最大数量,CSR配置超过 5 时取最大值 5,默认值 3 | Read: ReadOnly | platform.sr | 不持久化 | 无影响 |
评审结论
1、新增属性评审通过,需要限制最大值,如果CSR配置超过最大值则使用定义的最大,在mds里面描述清楚
