关联issue
背景
上次评审了关于BMC的软复位原因增加了资源协作接口(见下述关联评审),但是对于应用管理框架对于BMC的运行异常导致的BMC复位,由于整体框架依赖关系的原因无法进行记录。
针对上述问题,重新制定了方案,并且基于当前方案进行进行重新评审。
关联评审
评审点
在 MacaService 资源协作接口下新增接口,用于处理带有复位原因的BMC复位。
path: /bmc/kepler/MacaService
interface: bmc.kepler.SystemControl
评审点1:增加属性 ResetCause
项 | 属性1 | 属性2 | 属性3 |
---|---|---|---|
属性名称 | ResetCause | ResetTimestamp | PerId |
属性类型 | y | u | s |
属性读写 | ro | 私有属性,不涉及 | 私有属性,不涉及 |
属性权限 | ReadOnly | 私有属性,不涉及 | 私有属性,不涉及 |
属性广播 | false | 私有属性,不涉及 | 私有属性,不涉及 |
属性持久化 | 复位持久化(掉电以后是AC启动,因此复位持久化即可) | 复位持久化 | 复位持久化 |
属性说明 | BMC软复位原因标识,具体的原因枚举如下表1 | BMC复位操作的时间戳 | 持久化主键,无实际意义 |
评审点2:新增加方法 ForceResetWithCause
项 | 说明 |
---|---|
方法名称 | ForceResetWithCause |
方法权限 | BasicSetting |
请求签名 | yy |
请求参数 | ResetType:uint8 类型,表征当前重启类型,取值有:0:表示下次从正常系统启动 1:表示下次从最小系统启动 ResetCause: uint8 类型,表征当前重启原因标识,具体的原因标识枚举如下表1 |
响应签名 | 无 |
响应参数 | 无 |
方法说明 | 强制复位BMC(增强)接口,需要带有复位原因 |
评审点3:新增加方法 GracefulResetWithCause
项 | 说明 |
---|---|
方法名称 | GracefulResetWithCause |
方法权限 | BasicSetting |
请求签名 | yy |
请求参数 | ResetType:uint8 类型,表征当前重启类型,取值有:0:表示下次从正常系统启动 1:表示下次从最小系统启动 ResetCause: uint8 类型,表征当前重启原因标识,具体的原因标识枚举如下表1 |
响应签名 | i |
响应参数 | OutData:int32 类型,表征当前平滑重启的处理结果 |
方法说明 | 平滑复位BMC(增强)接口,需要带有复位原因 备注:如果平滑重启前处理失败,则对应的BMC复位不会进行 |
表1:BMC复位原因标识
复位原因标识组 | 复位原因标识 | 复位原因说明 |
---|---|---|
00h ~ 0Fh | 命令复位 | |
00h | BMC重启操作复位 | |
01h | BMC镜像倒换操作复位 | |
02h | BMC固件升级复位 | |
03h | BMC恢复出厂设置复位 | |
04h | BMC资产报废复位 | |
05h | BMC固件校验根证书更新复位 | |
10h ~ 1Fh | 主动复位 | |
10h | BMC自愈复位 | |
11h | BMC硬件自检修复复位 | |
12h | BMC管理外设硬件初始化复位 | |
20h ~ 2Fh | 硬件操作复位 | |
20h | 按钮复位 | |
FFh | FFh | 未知原因复位 |
评审结论
通过,具体评审结论如下:
- 评审点1:通过,同意在资源协作接口
bmc.kepler.SystemControl
新增属性ResetCause
,签名为y
,复位持久化,不发送变更通知事件;同意新增私有属性ResetTimestamp
和PerId
- 评审点2:通过,同意在资源协作接口
bmc.kepler.SystemControl
新增方法ForceResetWithCause
,请求签名:yy
,权限为BasicSetting
,响应签名:无 - 评审点3: 通过,同意在资源协作接口
bmc.kepler.SystemControl
新增方法GracefulResetWithCause
,请求签名:yy
,权限为BasicSetting
,响应签名:i