media: coda: Add check for dcoda_iram_alloc
authorJiasheng Jiang <jiasheng@iscas.ac.cn>
Thu, 17 Nov 2022 06:56:52 +0000 (14:56 +0800)
committerGreg Kroah-Hartman <gregkh@linuxfoundation.org>
Sat, 31 Dec 2022 12:32:25 +0000 (13:32 +0100)
[ Upstream commit 6b8082238fb8bb20f67e46388123e67a5bbc558d ]

As the coda_iram_alloc may return NULL pointer,
it should be better to check the return value
in order to avoid NULL poineter dereference,
same as the others.

Fixes: b313bcc9a467 ("[media] coda: simplify IRAM setup")
Signed-off-by: Jiasheng Jiang <jiasheng@iscas.ac.cn>
Signed-off-by: Hans Verkuil <hverkuil-cisco@xs4all.nl>
Signed-off-by: Sasha Levin <sashal@kernel.org>
drivers/media/platform/chips-media/coda-bit.c

index 2736a90..6d816fd 100644 (file)
@@ -854,7 +854,7 @@ static void coda_setup_iram(struct coda_ctx *ctx)
                /* Only H.264BP and H.263P3 are considered */
                iram_info->buf_dbk_y_use = coda_iram_alloc(iram_info, w64);
                iram_info->buf_dbk_c_use = coda_iram_alloc(iram_info, w64);
-               if (!iram_info->buf_dbk_c_use)
+               if (!iram_info->buf_dbk_y_use || !iram_info->buf_dbk_c_use)
                        goto out;
                iram_info->axi_sram_use |= dbk_bits;
 
@@ -878,7 +878,7 @@ static void coda_setup_iram(struct coda_ctx *ctx)
 
                iram_info->buf_dbk_y_use = coda_iram_alloc(iram_info, w128);
                iram_info->buf_dbk_c_use = coda_iram_alloc(iram_info, w128);
-               if (!iram_info->buf_dbk_c_use)
+               if (!iram_info->buf_dbk_y_use || !iram_info->buf_dbk_c_use)
                        goto out;
                iram_info->axi_sram_use |= dbk_bits;