大家好,
在做固件联盟送测代码开发时,需要验证 IPMI 规范里(chassis power diag )。
测试环境是 鲲鹏服务器(openubmc固件),OS 为 openEuler 22.03 LTS(ARM64)。
我做了以下尝试:
# OS 端(root):想让未知 NMI 触发 panic,但 ARM64 内核没有这个开关
echo 1 > /proc/sys/kernel/unknown_nmi_panic # 返回:No such file or directory
# 带外测试脚本执行:
ipmitool -I lanplus -H 192.168.16.102 -U xxxx -P 'xxxx' power diag
# iBMC 返回
Set Chassis Power Control to Diag failed: Command not supported in present state
日志片段如下(见截图):
root@tux-106:/home/arch/test/firmware-test-evaluation-platform/BMC_Test/L1_MainTest/CESI# ipmitool -I lanplus -H 192.168.16.102 -U xxxx -P 'xxxx' -C 17 power diag
Set Chassis Power Control to Diag failed: Command not supported in present state
root@tux-106:/home/arch/test/firmware-test-evaluation-platform/BMC_Test/L1_MainTest/CESI# python3 main.py TEST-BMC-02-006
2025-07-24 06:08:06 - INFO utils.py[line:31]: Start TestCase:TEST-BMC-02-006-ipmi-set-power-diag
2025-07-24 06:08:06 - INFO oslib.py[line:44]: send os cmd: echo 1 > /proc/sys/kernel/unknown_nmi_panic
2025-07-24 06:08:08 - INFO transport.py[line:1819]: Connected (version 2.0, client OpenSSH_8.8)
2025-07-24 06:08:08 - INFO transport.py[line:1819]: Auth banner: b'\nAuthorized users only. All activities may be monitored and reported.\n'
2025-07-24 06:08:08 - INFO transport.py[line:1819]: Authentication (publickey) failed.
2025-07-24 06:08:09 - INFO transport.py[line:1819]: Authentication (password) successful!
2025-07-24 06:08:09 - INFO ssh.py[line:50]: SSH Connection IP:192.168.16.100, User: xxxx, Pwd: xxxx success!
2025-07-24 06:08:10 - INFO ssh.py[line:117]: Close the connect 192.168.16.100
2025-07-24 06:08:10 - ERROR utils.py[line:106]: [ipmitool -C 17 -I lanplus -H 192.168.16.102 -U xxxx -P xxxx power diag] execute FAIL !Error: Set Chassis Power Control to Diag failed: Command not supported in present state
2025-07-24 06:08:10 - ERROR ipmilib.py[line:38]: error! ipmi cmd ipmitool -C 17 -I lanplus -H 192.168.16.102 -U xxxx -P xxxx power diag fail!
想确认的问题:
- Kunpeng 服务器(openubmc)是否本身就不支持标准的
chassis power diag? - 如果支持,是否需要先在 iBMC CLI / BIOS 开启某个 选项?
- 如果不支持,华为有没有 OEM Raw 命令或 REST 接口可以触发?
- ARM64 系统要想捕获到 NMI 并 panic/kdump,有官方的内核或 RAS 设置指导吗?
