2024-02-11 15:07:11

by Daniil Dulov

[permalink] [raw]
Subject: [PATCH] media: cx2341x: Check return value of cx2341x_api()

cx2341x_api() may return an error, so add a check.

Found by Linux Verification Center (linuxtesting.org) with SVACE.

Fixes: 45ad9f8b44b0 ("V4L/DVB (4202): allow selecting CX2341x port mode")
Signed-off-by: Daniil Dulov <[email protected]>
---
drivers/media/common/cx2341x.c | 5 ++++-
1 file changed, 4 insertions(+), 1 deletion(-)

diff --git a/drivers/media/common/cx2341x.c b/drivers/media/common/cx2341x.c
index 1f67e021138f..fa888d7c3988 100644
--- a/drivers/media/common/cx2341x.c
+++ b/drivers/media/common/cx2341x.c
@@ -1035,7 +1035,10 @@ int cx2341x_update(void *priv, cx2341x_mbox_func func,
};
int err;

- cx2341x_api(priv, func, CX2341X_ENC_SET_OUTPUT_PORT, 2, new->port, 0);
+ err = cx2341x_api(priv, func, CX2341X_ENC_SET_OUTPUT_PORT, 2, new->port, 0);
+
+ if (err)
+ return err;

if (!old ||
CMP_FIELD(old, new, is_50hz)) {
--
2.25.1



2024-02-12 15:21:04

by Hans Verkuil

[permalink] [raw]
Subject: Re: [PATCH] media: cx2341x: Check return value of cx2341x_api()

On 11/02/2024 16:06, Daniil Dulov wrote:
> cx2341x_api() may return an error, so add a check.
>
> Found by Linux Verification Center (linuxtesting.org) with SVACE.
>
> Fixes: 45ad9f8b44b0 ("V4L/DVB (4202): allow selecting CX2341x port mode")
> Signed-off-by: Daniil Dulov <[email protected]>
> ---
> drivers/media/common/cx2341x.c | 5 ++++-
> 1 file changed, 4 insertions(+), 1 deletion(-)
>
> diff --git a/drivers/media/common/cx2341x.c b/drivers/media/common/cx2341x.c
> index 1f67e021138f..fa888d7c3988 100644
> --- a/drivers/media/common/cx2341x.c
> +++ b/drivers/media/common/cx2341x.c
> @@ -1035,7 +1035,10 @@ int cx2341x_update(void *priv, cx2341x_mbox_func func,
> };
> int err;
>
> - cx2341x_api(priv, func, CX2341X_ENC_SET_OUTPUT_PORT, 2, new->port, 0);
> + err = cx2341x_api(priv, func, CX2341X_ENC_SET_OUTPUT_PORT, 2, new->port, 0);
> +
> + if (err)
> + return err;

Indentation is all over the place, please fix!

Regards,

Hans

>
> if (!old ||
> CMP_FIELD(old, new, is_50hz)) {