2023-07-17 08:12:10

by Georgi Djakov

[permalink] [raw]
Subject: [PATCH] interconnect: qcom: icc-rpm: Initialize ret variable to fix smatch error

From: Georgi Djakov <[email protected]>

Fix the following smatch error:
drivers/interconnect/qcom/icc-rpm.c:243 qcom_icc_rpm_set() error: uninitialized symbol 'ret'.

Fixes: 32846c4a8f2a ("interconnect: qcom: icc-rpm: Set bandwidth on both contexts")
Signed-off-by: Georgi Djakov <[email protected]>
---
drivers/interconnect/qcom/icc-rpm.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/drivers/interconnect/qcom/icc-rpm.c b/drivers/interconnect/qcom/icc-rpm.c
index 612390b9eb18..6718cc648d75 100644
--- a/drivers/interconnect/qcom/icc-rpm.c
+++ b/drivers/interconnect/qcom/icc-rpm.c
@@ -206,7 +206,7 @@ static int qcom_icc_qos_set(struct icc_node *node)

static int qcom_icc_rpm_set(struct qcom_icc_node *qn, u64 *bw)
{
- int ret, rpm_ctx = 0;
+ int ret = 0, rpm_ctx = 0;
u64 bw_bps;

if (qn->qos.ap_owned)


2023-07-17 11:24:34

by Stephan Gerhold

[permalink] [raw]
Subject: Re: [PATCH] interconnect: qcom: icc-rpm: Initialize ret variable to fix smatch error

On Mon, Jul 17, 2023 at 10:34:29AM +0300, [email protected] wrote:
> From: Georgi Djakov <[email protected]>
>
> Fix the following smatch error:
> drivers/interconnect/qcom/icc-rpm.c:243 qcom_icc_rpm_set() error: uninitialized symbol 'ret'.
>
> Fixes: 32846c4a8f2a ("interconnect: qcom: icc-rpm: Set bandwidth on both contexts")
> Signed-off-by: Georgi Djakov <[email protected]>

Thanks for spotting this!

> ---
> drivers/interconnect/qcom/icc-rpm.c | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/drivers/interconnect/qcom/icc-rpm.c b/drivers/interconnect/qcom/icc-rpm.c
> index 612390b9eb18..6718cc648d75 100644
> --- a/drivers/interconnect/qcom/icc-rpm.c
> +++ b/drivers/interconnect/qcom/icc-rpm.c
> @@ -206,7 +206,7 @@ static int qcom_icc_qos_set(struct icc_node *node)
>
> static int qcom_icc_rpm_set(struct qcom_icc_node *qn, u64 *bw)
> {
> - int ret, rpm_ctx = 0;
> + int ret = 0, rpm_ctx = 0;
> u64 bw_bps;
>
> if (qn->qos.ap_owned)

I think it would be a bit clearer to change the "return ret;" at the end
of the function to "return 0;". The ret variable is only used inside the
for loop and always handled there, so we always want to return 0 when
reaching the end of the function.

Thanks,
Stephan

2023-07-17 13:16:58

by Georgi Djakov

[permalink] [raw]
Subject: [PATCH v2] interconnect: qcom: icc-rpm: Explicitly return 0 at the end of the function

From: Georgi Djakov <[email protected]>

Fix the following smatch error:
drivers/interconnect/qcom/icc-rpm.c:243 qcom_icc_rpm_set() error: uninitialized symbol 'ret'.

Fixes: 32846c4a8f2a ("interconnect: qcom: icc-rpm: Set bandwidth on both contexts")
Signed-off-by: Georgi Djakov <[email protected]>
---
v2: Just return 0 when reaching the end of the function. (Thanks Stephan!)
v1: https://lore.kernel.org/r/[email protected]

drivers/interconnect/qcom/icc-rpm.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/drivers/interconnect/qcom/icc-rpm.c b/drivers/interconnect/qcom/icc-rpm.c
index 612390b9eb18..2c16917ba1fd 100644
--- a/drivers/interconnect/qcom/icc-rpm.c
+++ b/drivers/interconnect/qcom/icc-rpm.c
@@ -240,7 +240,7 @@ static int qcom_icc_rpm_set(struct qcom_icc_node *qn, u64 *bw)
}
}

- return ret;
+ return 0;
}

/**

2023-07-17 13:17:31

by Stephan Gerhold

[permalink] [raw]
Subject: Re: [PATCH v2] interconnect: qcom: icc-rpm: Explicitly return 0 at the end of the function

On Mon, Jul 17, 2023 at 03:55:34PM +0300, [email protected] wrote:
> From: Georgi Djakov <[email protected]>
>
> Fix the following smatch error:
> drivers/interconnect/qcom/icc-rpm.c:243 qcom_icc_rpm_set() error: uninitialized symbol 'ret'.
>
> Fixes: 32846c4a8f2a ("interconnect: qcom: icc-rpm: Set bandwidth on both contexts")
> Signed-off-by: Georgi Djakov <[email protected]>
> ---
> v2: Just return 0 when reaching the end of the function. (Thanks Stephan!)
> v1: https://lore.kernel.org/r/[email protected]
>
> drivers/interconnect/qcom/icc-rpm.c | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/drivers/interconnect/qcom/icc-rpm.c b/drivers/interconnect/qcom/icc-rpm.c
> index 612390b9eb18..2c16917ba1fd 100644
> --- a/drivers/interconnect/qcom/icc-rpm.c
> +++ b/drivers/interconnect/qcom/icc-rpm.c
> @@ -240,7 +240,7 @@ static int qcom_icc_rpm_set(struct qcom_icc_node *qn, u64 *bw)
> }
> }
>
> - return ret;
> + return 0;
> }
>
> /**

Thanks!

Reviewed-by: Stephan Gerhold <[email protected]>