Re: [PATCH] dma-buf: call dma_buf_stats_setup after dmabuf is in valid list

From: Christian König
Date: Tue May 10 2022 - 05:32:18 EST


Am 10.05.22 um 04:43 schrieb Charan Teja Kalla:
Hello Mercier,

On 5/10/2022 3:19 AM, T.J. Mercier wrote:
On Mon, May 9, 2022 at 12:50 PM Charan Teja Kalla
<quic_charante@xxxxxxxxxxx> wrote:
From: Charan Teja Reddy <quic_charante@xxxxxxxxxxx>

When dma_buf_stats_setup() fails, it closes the dmabuf file which
results into the calling of dma_buf_file_release() where it does
list_del(&dmabuf->list_node) with out first adding it to the proper
list. This is resulting into panic in the below path:
__list_del_entry_valid+0x38/0xac
dma_buf_file_release+0x74/0x158
__fput+0xf4/0x428
____fput+0x14/0x24
task_work_run+0x178/0x24c
do_notify_resume+0x194/0x264
work_pending+0xc/0x5f0

Fix it by moving the dma_buf_stats_setup() after dmabuf is added to the
list.

Fixes: bdb8d06dfefd ("dmabuf: Add the capability to expose DMA-BUF stats in sysfs")
Signed-off-by: Charan Teja Reddy <quic_charante@xxxxxxxxxxx>
Tested-by: T.J. Mercier <tjmercier@xxxxxxxxxx>
Acked-by: T.J. Mercier <tjmercier@xxxxxxxxxx>

Thanks for the Ack. Also Realized that it should have:
Cc: <stable@xxxxxxxxxxxxxxx> # 5.15.x+

Reviewed and pushed to drm-misc-fixes.

Thanks,
Christian.