media: staging/intel-ipu3: Fix memory leak in imu_fmt
commit 3630901933afba1d16c462b04d569b7576339223 upstream. We are losing the reference to an allocated memory if try. Change the order of the check to avoid that. Cc: stable@vger.kernel.org Fixes: 6d5f26f2e045 ("media: staging/intel-ipu3-v4l: reduce kernel stack usage") Signed-off-by: Ricardo Ribalda <ribalda@chromium.org> Signed-off-by: Sakari Ailus <sakari.ailus@linux.intel.com> Signed-off-by: Mauro Carvalho Chehab <mchehab+huawei@kernel.org> Signed-off-by: Greg Kroah-Hartman <gregkh@linuxfoundation.org>
This commit is contained in:
parent
ae37aee56c
commit
ff792ae520
@ -692,6 +692,13 @@ static int imgu_fmt(struct imgu_device *imgu, unsigned int pipe, int node,
|
||||
if (inode == IMGU_NODE_STAT_3A || inode == IMGU_NODE_PARAMS)
|
||||
continue;
|
||||
|
||||
/* CSS expects some format on OUT queue */
|
||||
if (i != IPU3_CSS_QUEUE_OUT &&
|
||||
!imgu_pipe->nodes[inode].enabled) {
|
||||
fmts[i] = NULL;
|
||||
continue;
|
||||
}
|
||||
|
||||
if (try) {
|
||||
fmts[i] = kmemdup(&imgu_pipe->nodes[inode].vdev_fmt.fmt.pix_mp,
|
||||
sizeof(struct v4l2_pix_format_mplane),
|
||||
@ -704,10 +711,6 @@ static int imgu_fmt(struct imgu_device *imgu, unsigned int pipe, int node,
|
||||
fmts[i] = &imgu_pipe->nodes[inode].vdev_fmt.fmt.pix_mp;
|
||||
}
|
||||
|
||||
/* CSS expects some format on OUT queue */
|
||||
if (i != IPU3_CSS_QUEUE_OUT &&
|
||||
!imgu_pipe->nodes[inode].enabled)
|
||||
fmts[i] = NULL;
|
||||
}
|
||||
|
||||
if (!try) {
|
||||
|
Loading…
x
Reference in New Issue
Block a user