mirror of
git://git.yoctoproject.org/linux-yocto.git
synced 2025-10-22 15:03:53 +02:00
media: stm32-csi: Fix dereference before NULL check
commit 80eaf32672871bd2623ce6ba13ffc1f018756580 upstream.
In 'stm32_csi_start', 'csidev->s_subdev' is dereferenced directly while
assigning a value to the 'src_pad'. However the same value is being
checked against NULL at a later point of time indicating that there
are chances that the value can be NULL.
Move the dereference after the NULL check.
Fixes: e7bad98c20
("media: v4l: Convert the users of v4l2_get_link_freq to call it on a pad")
Cc: stable@vger.kernel.org
Signed-off-by: Chandra Mohan Sundar <chandramohan.explore@gmail.com>
Signed-off-by: Sakari Ailus <sakari.ailus@linux.intel.com>
Signed-off-by: Hans Verkuil <hverkuil+cisco@kernel.org>
Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
This commit is contained in:
parent
c9e024e907
commit
1f053d82e5
|
@ -443,8 +443,7 @@ static void stm32_csi_phy_reg_write(struct stm32_csi_dev *csidev,
|
|||
static int stm32_csi_start(struct stm32_csi_dev *csidev,
|
||||
struct v4l2_subdev_state *state)
|
||||
{
|
||||
struct media_pad *src_pad =
|
||||
&csidev->s_subdev->entity.pads[csidev->s_subdev_pad_nb];
|
||||
struct media_pad *src_pad;
|
||||
const struct stm32_csi_mbps_phy_reg *phy_regs = NULL;
|
||||
struct v4l2_mbus_framefmt *sink_fmt;
|
||||
const struct stm32_csi_fmts *fmt;
|
||||
|
@ -466,6 +465,7 @@ static int stm32_csi_start(struct stm32_csi_dev *csidev,
|
|||
if (!csidev->s_subdev)
|
||||
return -EIO;
|
||||
|
||||
src_pad = &csidev->s_subdev->entity.pads[csidev->s_subdev_pad_nb];
|
||||
link_freq = v4l2_get_link_freq(src_pad,
|
||||
fmt->bpp, 2 * csidev->num_lanes);
|
||||
if (link_freq < 0)
|
||||
|
|
Loading…
Reference in New Issue
Block a user