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 <[email protected]>
---
drivers/media/platform/chips-media/coda-bit.c | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)
diff --git a/drivers/media/platform/chips-media/coda-bit.c b/drivers/media/platform/chips-media/coda-bit.c
index 2736a902e3df..6d816fd69a17 100644
--- a/drivers/media/platform/chips-media/coda-bit.c
+++ b/drivers/media/platform/chips-media/coda-bit.c
@@ -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;
--
2.25.1
On Do, 2022-11-17 at 14:56 +0800, Jiasheng Jiang wrote:
> As the coda_iram_alloc may return NULL pointer,
coda_iram_alloc() may return (phys_addr_t)0, not a 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 <[email protected]>
> ---
> drivers/media/platform/chips-media/coda-bit.c | 4 ++--
> 1 file changed, 2 insertions(+), 2 deletions(-)
>
> diff --git a/drivers/media/platform/chips-media/coda-bit.c b/drivers/media/platform/chips-media/coda-bit.c
> index 2736a902e3df..6d816fd69a17 100644
> --- a/drivers/media/platform/chips-media/coda-bit.c
> +++ b/drivers/media/platform/chips-media/coda-bit.c
> @@ -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);
While this can return 0, if this allocation fails, ...
> iram_info->buf_dbk_c_use = coda_iram_alloc(iram_info, w64);
... this one must fail as well.
> - if (!iram_info->buf_dbk_c_use)
So the buf_dbk_c_use check is enough.
regards
Philipp