2024-01-06 15:23:08

by Colin Ian King

[permalink] [raw]
Subject: [PATCH][next] iio: adc: ti-ads7950: remove redundant assignment to variable ret

Variable ret is being assigned a value that is never read, the variable
is being re-assigned again a few statements later. Remove it.

Cleans up clang scan build warning:
warning: Value stored to 'ret' is never read [deadcode.DeadStores]

Signed-off-by: Colin Ian King <[email protected]>
---
drivers/iio/adc/ti-ads7950.c | 2 --
1 file changed, 2 deletions(-)

diff --git a/drivers/iio/adc/ti-ads7950.c b/drivers/iio/adc/ti-ads7950.c
index 263fc3a1b87e..f975de059ba0 100644
--- a/drivers/iio/adc/ti-ads7950.c
+++ b/drivers/iio/adc/ti-ads7950.c
@@ -441,8 +441,6 @@ static int ti_ads7950_get(struct gpio_chip *chip, unsigned int offset)
if (ret)
goto out;

- ret = ((st->single_rx >> 12) & BIT(offset)) ? 1 : 0;
-
/* Revert back to original settings */
st->cmd_settings_bitmask &= ~TI_ADS7950_CR_GPIO_DATA;
st->single_tx = TI_ADS7950_MAN_CMD_SETTINGS(st);
--
2.39.2



2024-01-06 18:30:25

by David Lechner

[permalink] [raw]
Subject: Re: [PATCH][next] iio: adc: ti-ads7950: remove redundant assignment to variable ret

On 1/6/24 9:22 AM, Colin Ian King wrote:
> Variable ret is being assigned a value that is never read, the variable
> is being re-assigned again a few statements later. Remove it.
>
> Cleans up clang scan build warning:
> warning: Value stored to 'ret' is never read [deadcode.DeadStores]
>
> Signed-off-by: Colin Ian King <[email protected]>
> ---
> drivers/iio/adc/ti-ads7950.c | 2 --
> 1 file changed, 2 deletions(-)
>
> diff --git a/drivers/iio/adc/ti-ads7950.c b/drivers/iio/adc/ti-ads7950.c
> index 263fc3a1b87e..f975de059ba0 100644
> --- a/drivers/iio/adc/ti-ads7950.c
> +++ b/drivers/iio/adc/ti-ads7950.c
> @@ -441,8 +441,6 @@ static int ti_ads7950_get(struct gpio_chip *chip, unsigned int offset)
> if (ret)
> goto out;
>
> - ret = ((st->single_rx >> 12) & BIT(offset)) ? 1 : 0;
> -
> /* Revert back to original settings */
> st->cmd_settings_bitmask &= ~TI_ADS7950_CR_GPIO_DATA;
> st->single_tx = TI_ADS7950_MAN_CMD_SETTINGS(st);

This does not look like the correct fix. This is the intended return value of the function in the case of no errors. So we probably need to introduce a new variable instead so that it doesn't get written over.

2024-01-07 16:02:50

by Jonathan Cameron

[permalink] [raw]
Subject: Re: [PATCH][next] iio: adc: ti-ads7950: remove redundant assignment to variable ret

On Sat, 6 Jan 2024 12:14:22 -0600
David Lechner <[email protected]> wrote:

> On 1/6/24 9:22 AM, Colin Ian King wrote:
> > Variable ret is being assigned a value that is never read, the variable
> > is being re-assigned again a few statements later. Remove it.
> >
> > Cleans up clang scan build warning:
> > warning: Value stored to 'ret' is never read [deadcode.DeadStores]
> >
> > Signed-off-by: Colin Ian King <[email protected]>
> > ---
> > drivers/iio/adc/ti-ads7950.c | 2 --
> > 1 file changed, 2 deletions(-)
> >
> > diff --git a/drivers/iio/adc/ti-ads7950.c b/drivers/iio/adc/ti-ads7950.c
> > index 263fc3a1b87e..f975de059ba0 100644
> > --- a/drivers/iio/adc/ti-ads7950.c
> > +++ b/drivers/iio/adc/ti-ads7950.c
> > @@ -441,8 +441,6 @@ static int ti_ads7950_get(struct gpio_chip *chip, unsigned int offset)
> > if (ret)
> > goto out;
> >
> > - ret = ((st->single_rx >> 12) & BIT(offset)) ? 1 : 0;
> > -
> > /* Revert back to original settings */
> > st->cmd_settings_bitmask &= ~TI_ADS7950_CR_GPIO_DATA;
> > st->single_tx = TI_ADS7950_MAN_CMD_SETTINGS(st);
>
> This does not look like the correct fix. This is the intended return value of the function in the case of no errors. So we probably need to introduce a new variable instead so that it doesn't get written over.

Agreed. Needs to stash that in another local variable and return that value
if ret == 0.

J


2024-01-08 07:45:52

by Dan Carpenter

[permalink] [raw]
Subject: Re: [PATCH][next] iio: adc: ti-ads7950: remove redundant assignment to variable ret

Justin Chen should have been on the CC list... It's a little late now
because we've kind of figured things out already, but lets add him
anyway.

regards,
dan carpenter

On Sun, Jan 07, 2024 at 04:02:32PM +0000, Jonathan Cameron wrote:
> On Sat, 6 Jan 2024 12:14:22 -0600
> David Lechner <[email protected]> wrote:
>
> > On 1/6/24 9:22 AM, Colin Ian King wrote:
> > > Variable ret is being assigned a value that is never read, the variable
> > > is being re-assigned again a few statements later. Remove it.
> > >
> > > Cleans up clang scan build warning:
> > > warning: Value stored to 'ret' is never read [deadcode.DeadStores]
> > >
> > > Signed-off-by: Colin Ian King <[email protected]>
> > > ---
> > > drivers/iio/adc/ti-ads7950.c | 2 --
> > > 1 file changed, 2 deletions(-)
> > >
> > > diff --git a/drivers/iio/adc/ti-ads7950.c b/drivers/iio/adc/ti-ads7950.c
> > > index 263fc3a1b87e..f975de059ba0 100644
> > > --- a/drivers/iio/adc/ti-ads7950.c
> > > +++ b/drivers/iio/adc/ti-ads7950.c
> > > @@ -441,8 +441,6 @@ static int ti_ads7950_get(struct gpio_chip *chip, unsigned int offset)
> > > if (ret)
> > > goto out;
> > >
> > > - ret = ((st->single_rx >> 12) & BIT(offset)) ? 1 : 0;
> > > -
> > > /* Revert back to original settings */
> > > st->cmd_settings_bitmask &= ~TI_ADS7950_CR_GPIO_DATA;
> > > st->single_tx = TI_ADS7950_MAN_CMD_SETTINGS(st);
> >
> > This does not look like the correct fix. This is the intended return value of the function in the case of no errors. So we probably need to introduce a new variable instead so that it doesn't get written over.
>
> Agreed. Needs to stash that in another local variable and return that value
> if ret == 0.
>
> J
>