[PATCH v2 1/4] drm/mediatek: Remove freeing not dynamic allocated memory

AngeloGioacchino Del Regno angelogioacchino.delregno at collabora.com
Wed Jun 14 01:43:06 PDT 2023


Il 13/06/23 13:32, Jason-JH.Lin ha scritto:
> Fixing the coverity issue of:
> mtk_drm_cmdq_pkt_destroy frees address of mtk_crtc->cmdq_handle
> 
> So remove the free function.
> 
> Signed-off-by: Jason-JH.Lin <jason-jh.lin at mediatek.com>
> Fixes: 7627122fd1c0 ("drm/mediatek: Add cmdq_handle in mtk_crtc")

Fixes tag goes before your S-o-b tag.

Anyway,
Reviewed-by: AngeloGioacchino Del Regno <angelogioacchino.delregno at collabora.com>

> ---
>   drivers/gpu/drm/mediatek/mtk_drm_crtc.c | 7 ++-----
>   1 file changed, 2 insertions(+), 5 deletions(-)
> 
> diff --git a/drivers/gpu/drm/mediatek/mtk_drm_crtc.c b/drivers/gpu/drm/mediatek/mtk_drm_crtc.c
> index d40142842f85..8d44f3df116f 100644
> --- a/drivers/gpu/drm/mediatek/mtk_drm_crtc.c
> +++ b/drivers/gpu/drm/mediatek/mtk_drm_crtc.c
> @@ -116,10 +116,9 @@ static int mtk_drm_cmdq_pkt_create(struct cmdq_client *client, struct cmdq_pkt *
>   	dma_addr_t dma_addr;
>   
>   	pkt->va_base = kzalloc(size, GFP_KERNEL);
> -	if (!pkt->va_base) {
> -		kfree(pkt);
> +	if (!pkt->va_base)
>   		return -ENOMEM;
> -	}
> +
>   	pkt->buf_size = size;
>   	pkt->cl = (void *)client;
>   
> @@ -129,7 +128,6 @@ static int mtk_drm_cmdq_pkt_create(struct cmdq_client *client, struct cmdq_pkt *
>   	if (dma_mapping_error(dev, dma_addr)) {
>   		dev_err(dev, "dma map failed, size=%u\n", (u32)(u64)size);
>   		kfree(pkt->va_base);
> -		kfree(pkt);
>   		return -ENOMEM;
>   	}
>   
> @@ -145,7 +143,6 @@ static void mtk_drm_cmdq_pkt_destroy(struct cmdq_pkt *pkt)
>   	dma_unmap_single(client->chan->mbox->dev, pkt->pa_base, pkt->buf_size,
>   			 DMA_TO_DEVICE);
>   	kfree(pkt->va_base);
> -	kfree(pkt);
>   }
>   #endif
>   





More information about the Linux-mediatek mailing list