lkml.org 
[lkml]   [2022]   [Oct]   [24]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
    Patch in this message
    /
    From
    Subject[PATCH 5.15 478/530] media: platform: fix some double free in meson-ge2d and mtk-jpeg and s5p-mfc
    Date
    From: Hangyu Hua <hbh25y@gmail.com>

    [ Upstream commit c65c3f3a2cbf21ed429d9b9c725bdb5dc6abf4cf ]

    video_unregister_device will release device internally. There is no need to
    call video_device_release after video_unregister_device.

    Signed-off-by: Hangyu Hua <hbh25y@gmail.com>
    Signed-off-by: Hans Verkuil <hverkuil-cisco@xs4all.nl>
    Signed-off-by: Mauro Carvalho Chehab <mchehab@kernel.org>
    Signed-off-by: Sasha Levin <sashal@kernel.org>
    ---
    drivers/media/platform/meson/ge2d/ge2d.c | 1 -
    drivers/media/platform/mtk-jpeg/mtk_jpeg_core.c | 1 -
    drivers/media/platform/s5p-mfc/s5p_mfc.c | 3 +--
    3 files changed, 1 insertion(+), 4 deletions(-)

    diff --git a/drivers/media/platform/meson/ge2d/ge2d.c b/drivers/media/platform/meson/ge2d/ge2d.c
    index a373dea9866b..a885cbc99e38 100644
    --- a/drivers/media/platform/meson/ge2d/ge2d.c
    +++ b/drivers/media/platform/meson/ge2d/ge2d.c
    @@ -1032,7 +1032,6 @@ static int ge2d_remove(struct platform_device *pdev)

    video_unregister_device(ge2d->vfd);
    v4l2_m2m_release(ge2d->m2m_dev);
    - video_device_release(ge2d->vfd);
    v4l2_device_unregister(&ge2d->v4l2_dev);
    clk_disable_unprepare(ge2d->clk);

    diff --git a/drivers/media/platform/mtk-jpeg/mtk_jpeg_core.c b/drivers/media/platform/mtk-jpeg/mtk_jpeg_core.c
    index a89c7b206eef..470f8f167744 100644
    --- a/drivers/media/platform/mtk-jpeg/mtk_jpeg_core.c
    +++ b/drivers/media/platform/mtk-jpeg/mtk_jpeg_core.c
    @@ -1457,7 +1457,6 @@ static int mtk_jpeg_remove(struct platform_device *pdev)

    pm_runtime_disable(&pdev->dev);
    video_unregister_device(jpeg->vdev);
    - video_device_release(jpeg->vdev);
    v4l2_m2m_release(jpeg->m2m_dev);
    v4l2_device_unregister(&jpeg->v4l2_dev);
    mtk_jpeg_clk_release(jpeg);
    diff --git a/drivers/media/platform/s5p-mfc/s5p_mfc.c b/drivers/media/platform/s5p-mfc/s5p_mfc.c
    index f336a9543273..4fc135d9f38b 100644
    --- a/drivers/media/platform/s5p-mfc/s5p_mfc.c
    +++ b/drivers/media/platform/s5p-mfc/s5p_mfc.c
    @@ -1406,6 +1406,7 @@ static int s5p_mfc_probe(struct platform_device *pdev)
    /* Deinit MFC if probe had failed */
    err_enc_reg:
    video_unregister_device(dev->vfd_dec);
    + dev->vfd_dec = NULL;
    err_dec_reg:
    video_device_release(dev->vfd_enc);
    err_enc_alloc:
    @@ -1451,8 +1452,6 @@ static int s5p_mfc_remove(struct platform_device *pdev)

    video_unregister_device(dev->vfd_enc);
    video_unregister_device(dev->vfd_dec);
    - video_device_release(dev->vfd_enc);
    - video_device_release(dev->vfd_dec);
    v4l2_device_unregister(&dev->v4l2_dev);
    s5p_mfc_unconfigure_dma_memory(dev);

    --
    2.35.1


    \
     
     \ /
      Last update: 2022-10-24 18:59    [W:3.779 / U:0.156 seconds]
    ©2003-2020 Jasper Spaans|hosted at Digital Ocean and TransIP|Read the blog|Advertise on this site