文档首页> Atlas 200 DK 开发者套件(1.0.7.alpha)> 故障处理> DVPP常见故障> 常见故障分析与处理> 多次调用VPC触发硬件保护机制,导致VPC所有引擎不可用
更新时间:2021-03-18 GMT+08:00
分享

多次调用VPC触发硬件保护机制,导致VPC所有引擎不可用

现象描述

代码存在bug的情况下,在调试过程中连续调用VPC模块处理失败,查看日志有如下类似错误信息:

p_engine_para->fail_count< (15)

修复代码bug后,VPC处理仍然失败,需重启昇腾处理器才能恢复。

除了VPC模块,DVPP其他模块也存在这个问题,即出现"p_engine_para->fail_count< (15)"的错误打印,都需要重启昇腾处理器才能恢复。

可能原因

对于VPC模块,可能由于内存地址异常,多次调用VPC,触发硬件保护机制,导致VPC所有引擎不可用。

DVPP其他模块可能是由于码流或者参数配置有问题。

定位思路

对于VPC模块,检查VPC输入输出内存在调用VPC处理之前是否已经释放,是否变成野指针在使用。

对于DVPP其他模块,检查码流和参数配置是否正确。

处理步骤

  1. 检查输出地址是否存在野指针情况,以及检查码流和参数配置是否正确。

    例如:将JPEGD的输出内存作为VPC的输入内存时,这个内存释放应该在VPC之后,不能在调用JPEGD之后就进行释放,导致VPC输入内存地址成为野指针。

  2. 重启系统。
分享:

    相关文档

    相关产品

close