media: imx-jpeg: fix a bug of accessing array out of bounds
authorMing Qian <ming.qian@nxp.com>
Mon, 7 Feb 2022 06:28:43 +0000 (14:28 +0800)
committerHans Verkuil <hverkuil-cisco@xs4all.nl>
Tue, 22 Feb 2022 08:41:12 +0000 (09:41 +0100)
commit97558d170a1236280407e8d29a7d095d2c2ed554
treee67d4cc08b20134889a0774c11f19e605ed1ad73
parentadccfff098f59f47cbf4bcbfdf8732832419dcaf
media: imx-jpeg: fix a bug of accessing array out of bounds

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@nxp.com>
Reviewed-by: Mirela Rabulea <mirela.rabulea@nxp.com>
Signed-off-by: Hans Verkuil <hverkuil-cisco@xs4all.nl>
drivers/media/platform/imx-jpeg/mxc-jpeg.c