Re: [PATCH][next] spi: dw: remove redundant assignment to variable len

From: Serge Semin
Date: Thu Feb 15 2024 - 08:57:10 EST


On Thu, Feb 15, 2024 at 01:16:03PM +0000, Colin Ian King wrote:
> The variable id len being initialized with a value that is never read,
> it is being re-assigned later on in a for-loop. The initialization is
> redundant and can be removed.
>
> Cleans up clang scan build warning:
> drivers/spi/spi-dw-dma.c:580:17: warning: Although the value stored
> to 'len' is used in the enclosing expression, the value is never
> actually read from 'len' [deadcode.DeadStores]

Don't know for sure now what was my original intention of having it
pre-initialized in the for-loop init section. Possibly what you
suggest to drop was a leftover from some another version of the
function implementation where the re-initialization was required. On
the other hand rather weak but still a justification of having that
assignment can be a maintainability so all the basic loop variables
would be safely pre-initialized before the code block is executed. But
in that case a more correct value would have been "xfer->len" instead
of zero. Anyway let's keep the code simple and drop the assignment.
Thanks for the patch.

Acked-by: Serge Semin <fancer.lancer@xxxxxxxxx>

-Serge(y)

>
> Signed-off-by: Colin Ian King <colin.i.king@xxxxxxxxx>
> ---
> drivers/spi/spi-dw-dma.c | 2 +-
> 1 file changed, 1 insertion(+), 1 deletion(-)
>
> diff --git a/drivers/spi/spi-dw-dma.c b/drivers/spi/spi-dw-dma.c
> index 0ecbb6c36e23..f4c209e5f52b 100644
> --- a/drivers/spi/spi-dw-dma.c
> +++ b/drivers/spi/spi-dw-dma.c
> @@ -577,7 +577,7 @@ static int dw_spi_dma_transfer_one(struct dw_spi *dws,
> sg_init_table(&tx_tmp, 1);
> sg_init_table(&rx_tmp, 1);
>
> - for (base = 0, len = 0; base < xfer->len; base += len) {
> + for (base = 0; base < xfer->len; base += len) {
> /* Fetch next Tx DMA data chunk */
> if (!tx_len) {
> tx_sg = !tx_sg ? &xfer->tx_sg.sgl[0] : sg_next(tx_sg);
> --
> 2.39.2
>