rockchip-linux / mpp

Media Process Platform (MPP) module
547 stars 164 forks source link

Mpp decoding error occurs by chance during run (mpp_task_dump_hw_reg) #490

Open leemengwei opened 9 months ago

leemengwei commented 9 months ago

gst-launch-1.0 filesrc location=/home/1702545238.mp4 ! qtdemux ! queue ! h264parse ! mppvideodec format=BGR ! fakesink

In some uncertain case, this command will cause tons of flooding log in /var/log/kernel.log: /orangepi5 kernel: [191343.475715] rk_vcodec: mpp_task_dump_hw_reg:2075 /orangepi5 kernel: [191343.475716] rk_vcodec: mpp_task_dump_hw_reg:2075 /orangepi5 kernel: [191343.475717] rk_vcodec: mpp_task_dump_hw_reg:2075 and finally overwhelm the host machine disk space, making it impossible to keep working. image

While the command reports: mpp[169]: mpp: error found on mpp initialization mpp[169]: mpp_buffer: Assertion p->allocator failed at get_group:936 mpp[169]: mpp_hal: mpp_hal_init hal h264d_rkdec init failed ret -1 mpp[169]: mpp_dec: mpp_dec_init could not init hal

Once onccansionally triggered, since the rk_vcodec module is the builtin module, it can only be solved by reboot (modprobe can't work on that). This is a serious bug that will tremendously compromise the RK production series.

HermanChen commented 9 months ago

allocator failed, is there any dmabuf allocator like dma-heap / drm / ion on the system?

leemengwei commented 9 months ago

how to check them? its worth mention that such error occurs by chance。

发自我的iPhone

------------------ Original ------------------ From: Herman Chen @.> Date: Fri,Dec 15,2023 2:02 PM To: rockchip-linux/mpp @.> Cc: Leemengwei @.>, Author @.> Subject: Re: [rockchip-linux/mpp] Mpp decoding error occurs by chance duringrun (mpp_task_dump_hw_reg) (Issue #490)

allocator failed, is there any dmabuf allocator like dma-heap / drm / ion on the system?

— Reply to this email directly, view it on GitHub, or unsubscribe. You are receiving this because you authored the thread.Message ID: @.***>

leemengwei commented 3 weeks ago

@HermanChen Hi this issue keep bothering our product line. We are buying more RK3588 and expanding our markets. Yes, though not familiar with dmabuff but I believe we do when using gstreamer with mppvideodec. We let mppvideodec to decode mp4 clips, that are dynamically stored in /dev/shm. Perhaps it's the share mem of certain mp4 somehow no longer accessible, which may leads to memory registrate error?