airockchip / librga

Apache License 2.0
276 stars 52 forks source link

rga_padding_demo raise `Bad address` #35

Closed MambaWong closed 1 year ago

MambaWong commented 1 year ago

SoC 为 RK3588

sudo ./rga_padding_demo

rgaapi version 1.9.1[4] 46 im2d_rga_impl rga_job_submit(2106): rga_job_submit(2106) start config fail: Bad address rga_padding_demo running failed, Fatal error: rga_job_submit(2106) start config fail: Bad address

在执行sudo ./rga_padding_demo命令之前查看驱动信息如下

[ 4.893542] rga3_core0 fdb60000.rga: Adding to iommu group 2 [ 4.893769] rga: rga3_core0, irq = 34, match scheduler [ 4.893966] rga: rga3_core0 hardware loaded successfully, hw_version:3.0.76831. [ 4.894009] rga: rga3_core0 probe successfully [ 4.894286] rga3_core1 fdb70000.rga: Adding to iommu group 3 [ 4.894438] rga: rga3_core1, irq = 35, match scheduler [ 4.894655] rga: rga3_core1 hardware loaded successfully, hw_version:3.0.76831. [ 4.894696] rga: rga3_core1 probe successfully [ 4.894974] rga: rga2, irq = 36, match scheduler [ 4.895182] rga: rga2 hardware loaded successfully, hw_version:3.2.63318. [ 4.895192] rga: rga2 probe successfully [ 4.895376] rga_iommu: IOMMU binding successfully, default mapping core[0x1] [ 4.895498] rga: Module initialized. v1.2.25

在执行sudo ./rga_padding_demo命令之后查看驱动信息如下

[ 4.893542] rga3_core0 fdb60000.rga: Adding to iommu group 2 [ 4.893769] rga: rga3_core0, irq = 34, match scheduler [ 4.893966] rga: rga3_core0 hardware loaded successfully, hw_version:3.0.76831. [ 4.894009] rga: rga3_core0 probe successfully [ 4.894286] rga3_core1 fdb70000.rga: Adding to iommu group 3 [ 4.894438] rga: rga3_core1, irq = 35, match scheduler [ 4.894655] rga: rga3_core1 hardware loaded successfully, hw_version:3.0.76831. [ 4.894696] rga: rga3_core1 probe successfully [ 4.894974] rga: rga2, irq = 36, match scheduler [ 4.895182] rga: rga2 hardware loaded successfully, hw_version:3.2.63318. [ 4.895192] rga: rga2 probe successfully [ 4.895376] rga_iommu: IOMMU binding successfully, default mapping core[0x1] [ 4.895498] rga: Module initialized. v1.2.25 [ 167.867276] rga_mm: This handle[548339653368] is illegal. [ 167.868659] rga_iommu: IOMMU intr fault, IOVA[0xab9bcaf0], STATUS[0x10b] [ 167.868676] rga3_reg: irq handler err! INTR[0x2112], HW_STATUS[0xaaaaa], CMD_STATUS[0x10001] [ 167.868691] rga3_reg: RGA3 soft reset complete. [ 167.868698] rga_iommu: RGA IOMMU: page fault! Please check the memory size. [ 167.872706] rga_mm: This handle[548339653368] is illegal. [ 167.873652] rga_iommu: IOMMU intr fault, IOVA[0xab97a1f0], STATUS[0x4b] [ 167.873667] rga3_reg: irq handler err! INTR[0x2], HW_STATUS[0xaaaaa], CMD_STATUS[0x1] [ 167.873681] rga3_reg: RGA3 soft reset complete. [ 167.873687] rga_iommu: RGA IOMMU: page fault! Please check the memory size. [ 167.878125] rga_job: rga request commit failed! [ 167.878138] rga: request[5] submit failed!

出现了 rga_iommu: RGA IOMMU: page fault! Please check the memory size.

Cerf-Yu commented 1 year ago

有修改参数之类的么? 看日志里面出现了很大的无效的handle image

MambaWong commented 1 year ago

@Cerf-Yu 没有修改任何参数

kunknu commented 1 year ago

遇到同样的问题,没有改动例程,按照例程运行,就会出现这个问题

kunknu commented 1 year ago

有修改参数之类的么? 看日志里面出现了很大的无效的handle image

有结论吗?在驱动版本,RGA multicore Device Driver: v1.2.23 RGA multicore Device Driver: v1.2.20 RGA multicore Device Driver: v1.2.25 ,soc是rk3588 ,现在最新的代码都有这个问题

MrWwei commented 1 year ago

这个解决了吗?我也遇到同样的问题

MambaWong commented 1 year ago

这个解决了吗?我也遇到同样的问题

后续没看了,不知道最新状态。 如果你是用最新的代码跑的还是有问题,那就是没解决。

kunknu commented 1 year ago

这个解决了吗?我也遇到同样的问题

后续没看了,不知道最新状态。 如果你是用最新的代码跑的还是有问题,那就是没解决。

没解决,已经和硬件厂商反馈了,现在用opencv的函数处理,也占用不了多少cpu

MrWwei commented 1 year ago

我跑的官方例子没问题,但是自己参照例子写的yolov5预处理,resize可以了,padding就出现这个问题了,直接用opencv就有点可惜了

MrWwei commented 1 year ago

我这边问题解决了,发现是用了opencv导致的,把opencv的相关代码去掉就OK了,并且在用rga操作时候,尽量使用4通道的图片格式,比如 rgba_8888

kunknu commented 1 year ago

我这边问题解决了,发现是用了opencv导致的,把opencv的相关代码去掉就OK了,并且在用rga操作时候,尽量使用4通道的图片格式,比如 rgba_8888

你的意思是padding输入rgb32可以,用rgb24不行吗?我这边测试用的是rgb24

MrWwei commented 1 year ago

我说的四通道主要解决时不时出现的RgaBlit(1483) RGA_BLIT fail: Invalid argument

cheng-an152 commented 1 year ago

请问各位这个问题解决了吗,我也遇到了相同的问题。