media: mediatek: vcodec: Fix encoder access NULL pointer
authorIrui Wang <irui.wang@mediatek.com>
Tue, 26 Sep 2023 10:19:08 +0000 (18:19 +0800)
committerHans Verkuil <hverkuil-cisco@xs4all.nl>
Thu, 5 Oct 2023 09:34:29 +0000 (11:34 +0200)
Need to set the private data with encoder device, or will access
NULL pointer in encoder handler.

Fixes: 1972e32431ed ("media: mediatek: vcodec: Fix possible invalid memory access for encoder")
Signed-off-by: Irui Wang <irui.wang@mediatek.com>
Reviewed-by: AngeloGioacchino Del Regno <angelogioacchino.delregno@collabora.com>
Signed-off-by: Hans Verkuil <hverkuil-cisco@xs4all.nl>
drivers/media/platform/mediatek/vcodec/encoder/venc_vpu_if.c

index d299cc2962a5ae0eb84e8115c3cf364789d1e4c6..ae6290d28f8e98eabfee667d60a73ea29c5ea60a 100644 (file)
@@ -138,7 +138,8 @@ int vpu_enc_init(struct venc_vpu_inst *vpu)
        vpu->ctx->vpu_inst = vpu;
 
        status = mtk_vcodec_fw_ipi_register(vpu->ctx->dev->fw_handler, vpu->id,
-                                           vpu_enc_ipi_handler, "venc", NULL);
+                                           vpu_enc_ipi_handler, "venc",
+                                           vpu->ctx->dev);
 
        if (status) {
                mtk_venc_err(vpu->ctx, "vpu_ipi_register fail %d", status);