背景
web页面电源按钮是否包含NMI中断选项是通过判断当前机型是否为Arm机型决定的,如果是Arm机型则不包含NMI中断选项。
Arm架构增加了对不可屏蔽中断(NMI)的支持,因此需要增加描述是否支持NMI中断的属性供前端判断是否显示NMI中断按钮。
关联ISSUE
暂未关联ISSUE
整体方案
新增资源协作属性是否支持触发系统NMI中断, /UI/Rest/GenericInfo 接口新增字段 NMISupported 决定前端是否显示NMI中断按钮
评审点
- 新增资源协作接口的path、interface以及属性名称
- /UI/Rest/GenericInfo接口新增字段的名称
详细描述
- 新增属性
path: “/bmc/kepler/ProductInfo/FruCtrlCapabilities”
interfafce: “bmc.kepler.ProductInfo.FruCtrlCapabilities”
对象名称: FruCtrlCapabilities
| 属性名称 | 变化类型 | 签名 | 读写&权限 | 持久化 | 变化通知 | 接口说明 | 接口约束 | 属性来源 |
|---|---|---|---|---|---|---|---|---|
| NMISupported | 新增属性 | b | 只读 R:ReadOnly |
否 | false | 默认为false,表明是否支持触发系统Nmi中断 | 无 | CSR配置 |
- /UI/Rest/GenericInfo接口新增字段 NMISupported
uri(已有):https://device_ip/UI/Rest/GenericInfo
变化类型:新增属性
操作类型:GET
应用场景:前端电源按钮是否包含触发系统NMI中断的选项
详细描述:
| 属性名称 | 取值类型 | 说明 | 取值范围 | 属性来源 | 操作权限 | 约束 |
|---|---|---|---|---|---|---|
| NMISupported | b | 是否支持触发系统NMI中断,如果为true,web页面电源按钮会包含触发系统NMI中断的选项,否则不包含 | true或false | FruCtrlCapabilities对象的 NMISupported 属性 | ReadOnly | 无 |
前端显示
单host显示
多host显示
评审结论
通过,具体结论如下:
- 同意 资源协作接口
bmc.kepler.ProductInfo.FruCtrlCapabilities新增属性NMISupported,用于描述该产品是否支持触发系统 NMI 中断;属性签名为 b,只读,读权限为 ReadOnly,无变化通知;属性默认值为 false,属性来自于 CSR 系统配置 - 同意 UIRest 接口
/UI/Rest/GenericInfo新增属性NMISupported,用于该产品是否支持触发系统NMI中断;属性为 Boolean 类型
遗留问题
- 多host场景,电源按钮下拉菜单,下发NMI中断,是否是所有host都会触发,需要考虑交换域没有host。
结论:NMI中断功能不常用,电源按钮下拉菜单里,不做所有system的NMI中断。多host场景,可以在各自system下触发NMI中断。 - 确认支持NMI中断是从产品维度,是否合适
结论:已确认,支持NMI中断是从产品维度的,不考虑一个system支持 另一个system不支持场景,多系统也保持一致。 - 新增资源协作接口 改成 新增属性
结论:已修改 - 分析昇腾场景,放在fructrl模块是否合适
结论:已和 bmc_core SIG 确认,同意放在fructrl模块 - ARM、NMI这些概念应该是跟CPU有关,跟System无关
结论:已修改为产品维度判断是否支持触发系统NMI中断

