问题描述
在装备单板FT联调中,kvm_remote_test%hi1710_113测试 执行./kvm_over_ip_test.sh,报错提示Vce Test fail,return:0f 31 00 90 00 00 01 44 10 00 00 00 00 56 6
kvm_fail_log.txt (15.4 KB)
dump_210618FEBEXFQA000188_20260227-0557 (1).tar.gz (8.3 MB)
初步分析结论
以下内容由 AI 分析
装备单板FT联调中执行 ./kvm_over_ip_test.sh,VCE视频测试步骤报错:
[vce_get_result] fail Vce Test fail,return:0f 31 00 90 00 00 01 44 07 00 00 00 00 56 63 65 20 54 65 73 74 ...
响应解析:
-
0f 31 00 90 — IPMI响应头
-
00 — Completion Code(命令执行成功)
-
00 — 保留
-
01 — 测试结果:失败(00为通过)
-
44 — DFT ID(0x44 = 68,即Vce Test)
-
56 63 65 20 54 65 73 74 — “Vce Test”(测试项名称ASCII)
关键日志分析
BMC侧核心错误(app.log)
2026-02-27 03:45:12.415852 unknown_service ERROR: image_service.lua(473): [kvm] dft_new_video_test: frame_len(38514) is wrong
此错误在 03:45:12 ~ 03:46:29 期间重复出现 30+次,frame_len始终为 38514。
VCE服务启动正常
2026-02-27 03:22:39.566695 unknown_service NOTICE: image_service.lua(95): Set vga status successfully, vga status=true
2026-02-27 03:22:39.567624 unknown_service NOTICE: image_service.lua(300): init image service success
2026-02-27 03:22:40.528139 unknown_service NOTICE: image_service.lua(630): start image service success
2026-02-27 03:22:44.904139 remote_console NOTICE: main.lua(44): Video play service listen to port:42199, socket id:13
VCE内核驱动正常
[12.105764] vce_dac_param_set,244,dac param register is: 0x800820f
[12.114754] vce_driver_probe,295,irq_mask 0xd80
Dump时VCE状态
----- Remote_console VCE Info -----
Image frame ready state: false
Last frame ready state: false
2026-02-27 05:57:23.941842 unknown_service ERROR: screenshot_api.lua(48): get lastframe ready state failed
环境信息
社区 1230 基线
remote_console/1.100.30@openubmc/stable
答案内容由AI生成,仅供参考:
5. 结论
根据上下文提供的资料,VCE Test失败最可能的原因是显卡输出异常或PCIe链路问题,导致VCE寄存器无法接收到正确的帧数据。建议优先执行近端VGA口验证和PCIe链路排查。若需进一步精确定位,请提供近端VGA测试结果及dmesg中PCIe相关日志——但当前知识库中未包含此特定错误的完整解决方案,仅能基于通用排查思路给出指导。
点击此处查看详细分析解答
根据提供的上下文信息,针对KVM远程执行VCE Test失败的问题,以下从原理和排查方向给出分析:
问题定位分析
1. VCE工作原理(基于知识库)
- 服务器显卡输出图像数据,同时传输到BMC芯片的VCE寄存器进行缓存(参见知识库《KVM常见问题定位指南》)。
- KVM服务从VCE寄存器读取图像数据,并通过WebSocket发送给远程会话(参见实体
KVM Service描述)。
- Remote Console服务负责收集VCE信息(
VCE info collect方法),并记录完成时间戳(2025-12-16 09:12:10.664989)。
2. 失败现象与知识库对应
| 现象 |
知识库关联内容 |
VCE Test失败,返回01(测试结果为失败) |
上下文未提供该测试的具体含义,但VCE相关错误属于视频捕获引擎异常 |
日志报错frame_len(38514) is wrong |
暗示VCE寄存器接收到的帧数据长度异常,可能源于显卡输出异常或PCIe链路异常 |
VCE状态Image frame ready state: false |
说明VCE寄存器未准备好有效图像数据,与《KVM常见问题定位指南》中“上电后KVM显示NO SIGNAL”的场景一致 |
3. 推荐排查方向(引用《KVM常见问题定位指南》)
根据知识库中《KVM常见问题定位指南》章节,当KVM无法从VCE寄存器获取有效图像数据时,应执行以下排查步骤:
-
检查近端VGA输出
- 在服务器近端VGA口连接显示器,观察是否有正常显示。
- 若近端也无显示,说明问题出在显卡或更上游硬件(知识库原文:“检查近端VGA口”)。
-
确认PCIe链路状态
- VCE寄存器图像数据来源于显卡,需通过PCIe链路传输。若PCIe建链失败,会导致VCE寄存器工作异常。
- 建议通过CPLD检查PCIe寄存器状态,并查看
dmesg日志、linux_kernel_log中是否存在PCIe相关报错(知识库原文:“若近端VGA口有数据显示,则可能是PCIe建链失败导致的VCE寄存器异常”)。
-
检查系统启动状态
- 确认服务器已正常进入OS,而非卡在BIOS自检阶段。可通过串口日志或KVM屏幕输出判断。
- 知识库中提到:“在近端VGA口连接显示屏,观察近端显示屏是否有显示;若近端也无显示,说明问题出在显卡或更上游”。
-
收集关键日志
- 查看
os日志、linux_kernel_log、dmesg日志,检查是否有可疑报错(知识库原文:“可查看一键收集日志中的os日志、linux_kernel_log内核日志,dmesg日志,检查是否有可疑报错”)。
4. 关于VCE服务与Remote Console
- 日志显示
image_service初始化成功,但后续出现帧长度错误。知识库中remote_console组件描述提到:该服务会执行VCE info collect并记录完成,但若VCE数据异常,则可能持续失败。
- 当前
Remote Console版本为1.100.30@openubmc/stable,知识库中该版本被列为已知可用版本,但未提及该版本存在特定VCE缺陷。
5. 结论
根据上下文提供的资料,VCE Test失败最可能的原因是显卡输出异常或PCIe链路问题,导致VCE寄存器无法接收到正确的帧数据。建议优先执行近端VGA口验证和PCIe链路排查。若需进一步精确定位,请提供近端VGA测试结果及dmesg中PCIe相关日志——但当前知识库中未包含此特定错误的完整解决方案,仅能基于通用排查思路给出指导。
注意:以上分析完全基于提供的上下文,未引入外部知识。若问题仍未解决,建议联系硬件团队进行显卡或主板链路诊断。
vyasa
(欧文健)
3
根据日志内容可以判断是vce寄存器给的内容长度异常,建议参考ai结论进行排查
这种问题,会有肉眼可见的现象吗?比如 KVM 一直无 signal 这种
有某些 sr 配置可能和这个问题相关吗?