Patch "media: imx-jpeg: fix a bug of accessing array out of bounds" has been added to the 5.15-stable tree

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



This is a note to let you know that I've just added the patch titled

    media: imx-jpeg: fix a bug of accessing array out of bounds

to the 5.15-stable tree which can be found at:
    http://www.kernel.org/git/?p=linux/kernel/git/stable/stable-queue.git;a=summary

The filename of the patch is:
     media-imx-jpeg-fix-a-bug-of-accessing-array-out-of-b.patch
and it can be found in the queue-5.15 subdirectory.

If you, or anyone else, feels it should not be added to the stable tree,
please let <stable@xxxxxxxxxxxxxxx> know about it.



commit 2f14f112673a129558e009a0e2959adf0989fad4
Author: Ming Qian <ming.qian@xxxxxxx>
Date:   Mon Feb 7 14:28:43 2022 +0800

    media: imx-jpeg: fix a bug of accessing array out of bounds
    
    [ Upstream commit 97558d170a1236280407e8d29a7d095d2c2ed554 ]
    
    When error occurs in parsing jpeg, the slot isn't acquired yet, it may
    be the default value MXC_MAX_SLOTS.
    If the driver access the slot using the incorrect slot number, it will
    access array out of bounds.
    The result is the driver will change num_domains, which follows
    slot_data in struct mxc_jpeg_dev.
    Then the driver won't detach the pm domain at rmmod, which will lead to
    kernel panic when trying to insmod again.
    
    Signed-off-by: Ming Qian <ming.qian@xxxxxxx>
    Reviewed-by: Mirela Rabulea <mirela.rabulea@xxxxxxx>
    Signed-off-by: Hans Verkuil <hverkuil-cisco@xxxxxxxxx>
    Signed-off-by: Sasha Levin <sashal@xxxxxxxxxx>

diff --git a/drivers/media/platform/imx-jpeg/mxc-jpeg.c b/drivers/media/platform/imx-jpeg/mxc-jpeg.c
index 637d73f5f4a2..37905547466b 100644
--- a/drivers/media/platform/imx-jpeg/mxc-jpeg.c
+++ b/drivers/media/platform/imx-jpeg/mxc-jpeg.c
@@ -932,7 +932,6 @@ static void mxc_jpeg_device_run(void *priv)
 		jpeg_src_buf->jpeg_parse_error = true;
 	}
 	if (jpeg_src_buf->jpeg_parse_error) {
-		jpeg->slot_data[ctx->slot].used = false;
 		v4l2_m2m_src_buf_remove(ctx->fh.m2m_ctx);
 		v4l2_m2m_dst_buf_remove(ctx->fh.m2m_ctx);
 		v4l2_m2m_buf_done(src_buf, VB2_BUF_STATE_ERROR);



[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[Index of Archives]     [Linux USB Devel]     [Linux Audio Users]     [Yosemite News]     [Linux Kernel]     [Linux SCSI]

  Powered by Linux