Toybrick

DMA buf copy error

xinzhiling111

中级会员

积分
403
发表于 2021-6-11 10:18:44    查看: 7615|回复: 5 | [复制链接]    打印 | 显示全部楼层
[ 6504.361270] rga: dma_buf_get fail fd[214419911]
[ 6504.361728] rga: dst:rga2_get_img_info fail
[ 6504.362159] rga: RGA2 : DMA buf copy error
[ 6504.366217] rga: dma_buf_get fail fd[214419911]
[ 6504.366668] rga: src:rga2_get_img_info fail
[ 6504.367045] rga: RGA2 : DMA buf copy error
[ 6504.368171] rga: dma_buf_get fail fd[214419911]
[ 6504.368580] rga: src:rga2_get_img_info fail
[ 6504.368951] rga: RGA2 : DMA buf copy error
[ 6505.346889] rga: dma_buf_get fail fd[214419911]
[ 6505.347342] rga: dst:rga2_get_img_info fail
[ 6505.347718] rga: RGA2 : DMA buf copy error
[ 6505.352763] rga: dma_buf_get fail fd[214419911]
[ 6505.353212] rga: src:rga2_get_img_info fail
[ 6505.353591] rga: RGA2 : DMA buf copy error

rk3399pro上通过rga进行图像处理的时候,log信息如上,这个错误有碰到的大神吗?看log一直打印这个,不过从应用功能上看不出问题来,处理的图像显示也正常,但是log一直出这个fail,不放心,所以想了解下这个log是怎么产生的?是否会有潜在的影响?

回复

使用道具 举报

jefferyzhang

版主

积分
13007
发表于 2021-6-11 11:21:39 | 显示全部楼层
rga: dma_buf_get fail fd[214419911]
fd值不可能这么大,明显是传了错误的fd值
回复

使用道具 举报

xinzhiling111

中级会员

积分
403
 楼主| 发表于 2021-6-11 13:18:22 | 显示全部楼层
jefferyzhang 发表于 2021-6-11 11:21
rga: dma_buf_get fail fd[214419911]
fd值不可能这么大,明显是传了错误的fd值

感谢大神回复,那我烧机的时候把fd值打印下看看,这个copy error跟之前那个mmu的错误不一样,这个错误,从现象看居然没啥影响,我把rga处理的图片用qt渲染出来,我看报这个错误的时候,视频显示是正常,但是总呼呼的打印,觉得不放心
回复

使用道具 举报

xinzhiling111

中级会员

积分
403
 楼主| 发表于 2021-6-15 09:25:37 | 显示全部楼层
jefferyzhang 发表于 2021-6-11 11:21
rga: dma_buf_get fail fd[214419911]
fd值不可能这么大,明显是传了错误的fd值

linux-rga里面的RgaBlit接口报的错,报错地方如下:
if(ioctl(ctx->rgaFd, RGA_BLIT_SYNC, &rgaReg)) {
        DEBUG(" %s(%d) RGA_BLIT fail: %s \n",__FUNCTION__, __LINE__,strerror(errno));
}
return 0;
error说是bad address,但是这个地方没有return错误提示,而是继续往下return 0,RgaBlit接口return 0,对外是成功的意思,难道是这个错误无所谓?
回复

使用道具 举报

jefferyzhang

版主

积分
13007
发表于 2021-6-15 12:13:54 | 显示全部楼层
xinzhiling111 发表于 2021-6-15 09:25
linux-rga里面的RgaBlit接口报的错,报错地方如下:
if(ioctl(ctx->rgaFd, RGA_BLIT_SYNC, &rgaReg)) {
         ...

虽然这套库不是我设计的,但换我来写也会这么写,只是他return的值可能没做好规范。
这是一个流,都给你打印错误信息了怎么能是无所谓,但也不能因为错误就abort掉吧,流里头偶尔出现一两个ioctl错误是很正常的,有可能硬件busy,有可能在reset,直接忽略往前走是很正常的做法。
你这里既然是bad address已经很明显告诉你送给rga的地址是错误的。
回复

使用道具 举报

xinzhiling111

中级会员

积分
403
 楼主| 发表于 2021-6-15 12:24:22 | 显示全部楼层
jefferyzhang 发表于 2021-6-15 12:13
虽然这套库不是我设计的,但换我来写也会这么写,只是他return的值可能没做好规范。
这是一个流,都给你 ...

嗯,多谢,也是,既然都打印错误,那肯定有影响,我再研究下rga,fd值没看出啥来,这个值多路图像处理的时候,值都是一个,我再打印下别的值看看。这个错误不是偶尔的报几个,是出现之后,就会一直打印,但是从处理的图像来看,图像本身缩放是成功的,又加上它没有返回错误,所以对这个报错实在好奇到底是怎么造成的,以及到底有啥影响。
回复

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

产品中心 购买渠道 开源社区 Wiki教程 资料下载 关于Toybrick


快速回复 返回顶部 返回列表