---
title: DVPP驱动引擎异常返回码
description: "视频解码失败，Device日志提示-512返回码：[dvpp_ioct1_vpc 845] call proc failed:-512, engine_id:1，如下所示。"
url: https://www.hiascend.com/document/detail/zh/canncommercial/latest/maintenref/troubleshooting/troubleshooting_0159.html
sourcePath: /source/zh/canncommercial/900/maintenref/troubleshooting/troubleshooting_0159.html
indexId: 26b0c9864a3ad00124e37a70e361c60fd60af8294738555a83354b3a2a3bd7c082
---
# DVPP驱动引擎异常返回码

#### 问题现象描述

视频解码失败，Device日志提示-512返回码：[dvpp_ioct1_vpc 845] call proc failed:-512, engine_id:1，如下所示。

```
[ERROR] KERNEL(1200,sklogd):2019-11-29-21:42:07.421.714 [8078.067669] [dvpp] [dvpp_print_vpc_job 156] outctl out2_select:0
[ERROR] KERNEL(1200,sklogd):2019-11-29-21:42:07.421.740 [8078.067672] [dvpp] [dvpp_print_vpc_job 184] OUT
[ERROR] KERNEL(1200,sklogd):2019-11-29-21:42:07.421.764 [8078.067673] [dvpp] [dvpp_print vpc_job 185] out use_flag:1
[ERROR] KERNEL(1200,sklogd):2019-11-29-21:42:07.421.789 [8078.067675] [dvpp] [dvpp_print_vpc_job 186] wr0 addr_frame_start:ffff35a00000
[ERROR] KERNEL(1200,sk1ogd):2019-11-29-21:42:07.421.823 [8078.067677] [dvpp] [dvpp_print_vpc_job 187] wr1 addr_frame_start:ffff35aca800
[ERROR] KERNEL(1200,sk1ogd):2019-11-29-21:42:07.421.853 [8078.067679] [dvpp] [dvpp_print_vpc_job 188] wr2 addr_frame_start:0
[ERROR] KERNEL(1200,sk1ogd):2019-11-29-21:42:07.421.880 [8078.067680] [dvpp] [dvpp_print_vpc_job 189] wr3 addr_frame_start:0
[ERROR] KERNEL(1200,sk1ogd):2019-11-29-21:42:07.421.905 [8078.067693] [dvpp] [dvpp_ioctl_vpc 845] call proc failed:-512, engine_id:1
```


#### 可能原因

根据日志信息，判断为VPC引擎返回的异常码，再根据-512返回码可以判断为等待视频解码异常中断。可能原因：用户态进程退出，导致等待解码时被异常中断。


#### 解决方法

查看Host侧的日志文件，检查用户态进程异常退出原因。


#### 其他异常码参考

除样例VPC引擎返回的-512异常码外，DVPP驱动引擎还有其他引擎及各自的返回码，如表1所示。

您可以参考上述样例的方法，根据自身业务类型及Device日志文件中记录的异常返回码信息，先判断返回异常码的引擎类型，再根据返回码数值获取对应的返回码说明，初步判断故障原因。


**表1 DVPP驱动引擎异常返回码**

| 引擎类型 | 驱动IOCTL返回码 | 返回码说明 | 常见错误日志参考 |
| --- | --- | --- | --- |
| JPEGE | \-22 | 参数错误或者不支持 | 常见错误打印： 返回值\-35：日志“JPEGE time wait, engine\_id:xx”编码超时（执行器输入编码参数不对等导致）。 返回值\-512：日志“Signal interrupted, engine\_id:xx”编码错误（编码被异常中断）。 |
| JPEGE | \-11 | 引擎处理异常，需要重试 | 常见错误打印： 返回值\-35：日志“JPEGE time wait, engine\_id:xx”编码超时（执行器输入编码参数不对等导致）。 返回值\-512：日志“Signal interrupted, engine\_id:xx”编码错误（编码被异常中断）。 |
| JPEGE | \-14 | 拷贝用户态数据时地址异常或者释放引擎失败 | 常见错误打印： 返回值\-35：日志“JPEGE time wait, engine\_id:xx”编码超时（执行器输入编码参数不对等导致）。 返回值\-512：日志“Signal interrupted, engine\_id:xx”编码错误（编码被异常中断）。 |
| JPEGE | \-16 | 申请引擎失败 | 常见错误打印： 返回值\-35：日志“JPEGE time wait, engine\_id:xx”编码超时（执行器输入编码参数不对等导致）。 返回值\-512：日志“Signal interrupted, engine\_id:xx”编码错误（编码被异常中断）。 |
| JPEGE | \-35 | 编码超时 | 常见错误打印： 返回值\-35：日志“JPEGE time wait, engine\_id:xx”编码超时（执行器输入编码参数不对等导致）。 返回值\-512：日志“Signal interrupted, engine\_id:xx”编码错误（编码被异常中断）。 |
| JPEGE | \-5 | 编码失败且复位成功 | 常见错误打印： 返回值\-35：日志“JPEGE time wait, engine\_id:xx”编码超时（执行器输入编码参数不对等导致）。 返回值\-512：日志“Signal interrupted, engine\_id:xx”编码错误（编码被异常中断）。 |
| JPEGE | 5 | 编码失败且复位失败 | 常见错误打印： 返回值\-35：日志“JPEGE time wait, engine\_id:xx”编码超时（执行器输入编码参数不对等导致）。 返回值\-512：日志“Signal interrupted, engine\_id:xx”编码错误（编码被异常中断）。 |
| JPEGE | \-512 | 等待编码时被异常中断 | 常见错误打印： 返回值\-35：日志“JPEGE time wait, engine\_id:xx”编码超时（执行器输入编码参数不对等导致）。 返回值\-512：日志“Signal interrupted, engine\_id:xx”编码错误（编码被异常中断）。 |
| PNGD | \-22 | 参数错误或者不支持 | 常见错误打印： 返回值5/\-5：日志1“Time out: wait failed xx”解码超时（图片格式不正确等码流异常等导致）。 返回值5/\-5：日志2“Signal interrupted:xx, engine\_id:xx”解码时被异常中断。 |
| PNGD | \-14 | 拷贝用户态数据时地址异常或者释放引擎失败 | 常见错误打印： 返回值5/\-5：日志1“Time out: wait failed xx”解码超时（图片格式不正确等码流异常等导致）。 返回值5/\-5：日志2“Signal interrupted:xx, engine\_id:xx”解码时被异常中断。 |
| PNGD | \-16 | 申请引擎失败 | 常见错误打印： 返回值5/\-5：日志1“Time out: wait failed xx”解码超时（图片格式不正确等码流异常等导致）。 返回值5/\-5：日志2“Signal interrupted:xx, engine\_id:xx”解码时被异常中断。 |
| PNGD | \-5 | 解码失败且复位成功 | 常见错误打印： 返回值5/\-5：日志1“Time out: wait failed xx”解码超时（图片格式不正确等码流异常等导致）。 返回值5/\-5：日志2“Signal interrupted:xx, engine\_id:xx”解码时被异常中断。 |
| PNGD | 5 | 解码失败且复位失败 | 常见错误打印： 返回值5/\-5：日志1“Time out: wait failed xx”解码超时（图片格式不正确等码流异常等导致）。 返回值5/\-5：日志2“Signal interrupted:xx, engine\_id:xx”解码时被异常中断。 |
| JPEGD | \-22 | 参数错误或者不支持或者解码成功但是重置寄存器失败 | 常见错误打印： 返回值\-1/\-23：日志“Decode abnormal, abnormal status:xx decode error! engine id:xx”硬件上报异常中断（图片格式不正确等码流异常导致）。 返回值\-2/\-24：日志“Decode abnormal, abnormal status:xx decode over time!, engine id:xx”解码超时（总线繁忙，系统缺页等导致）。 |
| JPEGD | \-14 | 拷贝用户态数据时地址异常或者释放引擎失败 | 常见错误打印： 返回值\-1/\-23：日志“Decode abnormal, abnormal status:xx decode error! engine id:xx”硬件上报异常中断（图片格式不正确等码流异常导致）。 返回值\-2/\-24：日志“Decode abnormal, abnormal status:xx decode over time!, engine id:xx”解码超时（总线繁忙，系统缺页等导致）。 |
| JPEGD | \-16 | 申请引擎失败 | 常见错误打印： 返回值\-1/\-23：日志“Decode abnormal, abnormal status:xx decode error! engine id:xx”硬件上报异常中断（图片格式不正确等码流异常导致）。 返回值\-2/\-24：日志“Decode abnormal, abnormal status:xx decode over time!, engine id:xx”解码超时（总线繁忙，系统缺页等导致）。 |
| JPEGD | \-1 | 解码失败且复位成功 | 常见错误打印： 返回值\-1/\-23：日志“Decode abnormal, abnormal status:xx decode error! engine id:xx”硬件上报异常中断（图片格式不正确等码流异常导致）。 返回值\-2/\-24：日志“Decode abnormal, abnormal status:xx decode over time!, engine id:xx”解码超时（总线繁忙，系统缺页等导致）。 |
| JPEGD | \-2/\-3 | 解码超时且复位成功 | 常见错误打印： 返回值\-1/\-23：日志“Decode abnormal, abnormal status:xx decode error! engine id:xx”硬件上报异常中断（图片格式不正确等码流异常导致）。 返回值\-2/\-24：日志“Decode abnormal, abnormal status:xx decode over time!, engine id:xx”解码超时（总线繁忙，系统缺页等导致）。 |
| JPEGD | \-23 | 解码失败并且复位失败 | 常见错误打印： 返回值\-1/\-23：日志“Decode abnormal, abnormal status:xx decode error! engine id:xx”硬件上报异常中断（图片格式不正确等码流异常导致）。 返回值\-2/\-24：日志“Decode abnormal, abnormal status:xx decode over time!, engine id:xx”解码超时（总线繁忙，系统缺页等导致）。 |
| JPEGD | \-24/\-25 | 解码超时并且复位失败 | 常见错误打印： 返回值\-1/\-23：日志“Decode abnormal, abnormal status:xx decode error! engine id:xx”硬件上报异常中断（图片格式不正确等码流异常导致）。 返回值\-2/\-24：日志“Decode abnormal, abnormal status:xx decode over time!, engine id:xx”解码超时（总线繁忙，系统缺页等导致）。 |
| VPC | \-22 | 参数错误或者不支持 | 常见错误打印： 返回值\-35：日志“dvpp\_vpc\_engine\_proc pipe wait time out: engine id:xx”解码超时（总线繁忙、异常缺页等导致）。 返回值\-32：日志“Hardware process failed, engine id:xx”解码错误（码流异常等导致）。 |
| VPC | \-11 | 引擎处理异常，需要重试 | 常见错误打印： 返回值\-35：日志“dvpp\_vpc\_engine\_proc pipe wait time out: engine id:xx”解码超时（总线繁忙、异常缺页等导致）。 返回值\-32：日志“Hardware process failed, engine id:xx”解码错误（码流异常等导致）。 |
| VPC | \-14 | 拷贝用户态数据时地址异常或者释放引擎失败 | 常见错误打印： 返回值\-35：日志“dvpp\_vpc\_engine\_proc pipe wait time out: engine id:xx”解码超时（总线繁忙、异常缺页等导致）。 返回值\-32：日志“Hardware process failed, engine id:xx”解码错误（码流异常等导致）。 |
| VPC | \-16 | 申请引擎失败 | 常见错误打印： 返回值\-35：日志“dvpp\_vpc\_engine\_proc pipe wait time out: engine id:xx”解码超时（总线繁忙、异常缺页等导致）。 返回值\-32：日志“Hardware process failed, engine id:xx”解码错误（码流异常等导致）。 |
| VPC | \-35 | 解码超时 | 常见错误打印： 返回值\-35：日志“dvpp\_vpc\_engine\_proc pipe wait time out: engine id:xx”解码超时（总线繁忙、异常缺页等导致）。 返回值\-32：日志“Hardware process failed, engine id:xx”解码错误（码流异常等导致）。 |
| VPC | \-512 | 等待解码时被异常中断 | 常见错误打印： 返回值\-35：日志“dvpp\_vpc\_engine\_proc pipe wait time out: engine id:xx”解码超时（总线繁忙、异常缺页等导致）。 返回值\-32：日志“Hardware process failed, engine id:xx”解码错误（码流异常等导致）。 |
| VPC | \-32 | 硬件解码失败驱动捕捉到异常 | 常见错误打印： 返回值\-35：日志“dvpp\_vpc\_engine\_proc pipe wait time out: engine id:xx”解码超时（总线繁忙、异常缺页等导致）。 返回值\-32：日志“Hardware process failed, engine id:xx”解码错误（码流异常等导致）。 |
| VPC\_cmdlist | \-22 | 参数错误或者不支持 | 常见错误打印： 返回值\-35：日志“dvpp\_vpc\_engine\_proc pipe wait time out: engine id:xx”解码超时（总线繁忙、异常缺页等导致）。 返回值\-32：日志“Hardware process failed, engine id:xx”解码错误（码流异常等导致）。 |
| VPC\_cmdlist | \-11 | 引擎处理异常，需要重试 | 常见错误打印： 返回值\-35：日志“dvpp\_vpc\_engine\_proc pipe wait time out: engine id:xx”解码超时（总线繁忙、异常缺页等导致）。 返回值\-32：日志“Hardware process failed, engine id:xx”解码错误（码流异常等导致）。 |
| VPC\_cmdlist | \-14 | 拷贝用户态数据时地址异常或者释放引擎失败 | 常见错误打印： 返回值\-35：日志“dvpp\_vpc\_engine\_proc pipe wait time out: engine id:xx”解码超时（总线繁忙、异常缺页等导致）。 返回值\-32：日志“Hardware process failed, engine id:xx”解码错误（码流异常等导致）。 |
| VPC\_cmdlist | \-16 | 申请引擎失败 | 常见错误打印： 返回值\-35：日志“dvpp\_vpc\_engine\_proc pipe wait time out: engine id:xx”解码超时（总线繁忙、异常缺页等导致）。 返回值\-32：日志“Hardware process failed, engine id:xx”解码错误（码流异常等导致）。 |
| VPC\_cmdlist | \-35 | 解码超时 | 常见错误打印： 返回值\-35：日志“dvpp\_vpc\_engine\_proc pipe wait time out: engine id:xx”解码超时（总线繁忙、异常缺页等导致）。 返回值\-32：日志“Hardware process failed, engine id:xx”解码错误（码流异常等导致）。 |
| VPC\_cmdlist | \-512 | 等待解码时被异常中断 | 常见错误打印： 返回值\-35：日志“dvpp\_vpc\_engine\_proc pipe wait time out: engine id:xx”解码超时（总线繁忙、异常缺页等导致）。 返回值\-32：日志“Hardware process failed, engine id:xx”解码错误（码流异常等导致）。 |
| VPC\_cmdlist | \-32 | 硬件解码失败 | 常见错误打印： 返回值\-35：日志“dvpp\_vpc\_engine\_proc pipe wait time out: engine id:xx”解码超时（总线繁忙、异常缺页等导致）。 返回值\-32：日志“Hardware process failed, engine id:xx”解码错误（码流异常等导致）。 |
| VENC | \-22 | 参数错误或者不支持 | 常见错误打印： 返回值\-35：日志“wait timeout, Ret value is xx”未等到完成中断，编码失败（执行器配置参数错误或者总线繁忙等导致）。 返回值\-61：日志“venc err interrupt state = xx, wait\_time\_remain = xx”编码失败（执行器配置参数错误）。 |
| VENC | \-11 | 引擎处理异常，需要重试 | 常见错误打印： 返回值\-35：日志“wait timeout, Ret value is xx”未等到完成中断，编码失败（执行器配置参数错误或者总线繁忙等导致）。 返回值\-61：日志“venc err interrupt state = xx, wait\_time\_remain = xx”编码失败（执行器配置参数错误）。 |
| VENC | \-14 | 拷贝用户态数据时地址异常或者释放引擎失败 | 常见错误打印： 返回值\-35：日志“wait timeout, Ret value is xx”未等到完成中断，编码失败（执行器配置参数错误或者总线繁忙等导致）。 返回值\-61：日志“venc err interrupt state = xx, wait\_time\_remain = xx”编码失败（执行器配置参数错误）。 |
| VENC | \-16 | 申请引擎失败 | 常见错误打印： 返回值\-35：日志“wait timeout, Ret value is xx”未等到完成中断，编码失败（执行器配置参数错误或者总线繁忙等导致）。 返回值\-61：日志“venc err interrupt state = xx, wait\_time\_remain = xx”编码失败（执行器配置参数错误）。 |
| VENC | \-35 | 未等到完成中断，编码失败 | 常见错误打印： 返回值\-35：日志“wait timeout, Ret value is xx”未等到完成中断，编码失败（执行器配置参数错误或者总线繁忙等导致）。 返回值\-61：日志“venc err interrupt state = xx, wait\_time\_remain = xx”编码失败（执行器配置参数错误）。 |
| VENC | \-61 | 上报编码超时中断 | 常见错误打印： 返回值\-35：日志“wait timeout, Ret value is xx”未等到完成中断，编码失败（执行器配置参数错误或者总线繁忙等导致）。 返回值\-61：日志“venc err interrupt state = xx, wait\_time\_remain = xx”编码失败（执行器配置参数错误）。 |
| VDEC | \-22 | 参数错误或者不支持 | 常见错误打印： 返回值\-35：日志“VDM wait time out,wait\_time\_remain = xx ,engine\_id:xx”解码超时（码流异常、总线繁忙等导致）。 返回值=\-61：日志“wait\_time\_remain = xx,have vdm\_error,p\_vdm\_backup\_state\->VdmState=xx ,engine\_id:xx”上报解码错误中断（码流异常等导致）。 |
| VDEC | \-11 | 引擎处理异常，需要重试 | 常见错误打印： 返回值\-35：日志“VDM wait time out,wait\_time\_remain = xx ,engine\_id:xx”解码超时（码流异常、总线繁忙等导致）。 返回值=\-61：日志“wait\_time\_remain = xx,have vdm\_error,p\_vdm\_backup\_state\->VdmState=xx ,engine\_id:xx”上报解码错误中断（码流异常等导致）。 |
| VDEC | \-14 | 拷贝用户态数据时地址异常或者释放引擎失败 | 常见错误打印： 返回值\-35：日志“VDM wait time out,wait\_time\_remain = xx ,engine\_id:xx”解码超时（码流异常、总线繁忙等导致）。 返回值=\-61：日志“wait\_time\_remain = xx,have vdm\_error,p\_vdm\_backup\_state\->VdmState=xx ,engine\_id:xx”上报解码错误中断（码流异常等导致）。 |
| VDEC | \-16 | 申请引擎失败 | 常见错误打印： 返回值\-35：日志“VDM wait time out,wait\_time\_remain = xx ,engine\_id:xx”解码超时（码流异常、总线繁忙等导致）。 返回值=\-61：日志“wait\_time\_remain = xx,have vdm\_error,p\_vdm\_backup\_state\->VdmState=xx ,engine\_id:xx”上报解码错误中断（码流异常等导致）。 |
| VDEC | \-35 | 解码超时 | 常见错误打印： 返回值\-35：日志“VDM wait time out,wait\_time\_remain = xx ,engine\_id:xx”解码超时（码流异常、总线繁忙等导致）。 返回值=\-61：日志“wait\_time\_remain = xx,have vdm\_error,p\_vdm\_backup\_state\->VdmState=xx ,engine\_id:xx”上报解码错误中断（码流异常等导致）。 |
| VDEC | \-61 | 上报解码错误中断 | 常见错误打印： 返回值\-35：日志“VDM wait time out,wait\_time\_remain = xx ,engine\_id:xx”解码超时（码流异常、总线繁忙等导致）。 返回值=\-61：日志“wait\_time\_remain = xx,have vdm\_error,p\_vdm\_backup\_state\->VdmState=xx ,engine\_id:xx”上报解码错误中断（码流异常等导致）。 |
| VDEC | \-4 | 等待解码被异常中断 | 常见错误打印： 返回值\-35：日志“VDM wait time out,wait\_time\_remain = xx ,engine\_id:xx”解码超时（码流异常、总线繁忙等导致）。 返回值=\-61：日志“wait\_time\_remain = xx,have vdm\_error,p\_vdm\_backup\_state\->VdmState=xx ,engine\_id:xx”上报解码错误中断（码流异常等导致）。 |
