diff mbox series

[net-next] net/mlx5e: avoid uninitialized variable use

Message ID 20190710130638.1846846-1-arnd@arndb.de
State New
Headers show
Series [net-next] net/mlx5e: avoid uninitialized variable use | expand

Commit Message

Arnd Bergmann July 10, 2019, 1:06 p.m. UTC
clang points to a variable being used in an unexpected
code path:

drivers/net/ethernet/mellanox/mlx5/core/en_accel/ktls_tx.c:251:2: warning: variable 'rec_seq_sz' is used uninitialized whenever switch default is taken [-Wsometimes-uninitialized]
        default:
        ^~~~~~~
drivers/net/ethernet/mellanox/mlx5/core/en_accel/ktls_tx.c:255:46: note: uninitialized use occurs here
        skip_static_post = !memcmp(rec_seq, &rn_be, rec_seq_sz);
                                                    ^~~~~~~~~~

From looking at the function logic, it seems that there is no
sensible way to continue here, so just return early and hope
for the best.

Fixes: d2ead1f360e8 ("net/mlx5e: Add kTLS TX HW offload support")
Signed-off-by: Arnd Bergmann <arnd@arndb.de>

---
 drivers/net/ethernet/mellanox/mlx5/core/en_accel/ktls_tx.c | 1 +
 1 file changed, 1 insertion(+)

-- 
2.20.0

Comments

Tariq Toukan July 10, 2019, 2:22 p.m. UTC | #1
On 7/10/2019 4:06 PM, Arnd Bergmann wrote:
> clang points to a variable being used in an unexpected

> code path:

> 

> drivers/net/ethernet/mellanox/mlx5/core/en_accel/ktls_tx.c:251:2: warning: variable 'rec_seq_sz' is used uninitialized whenever switch default is taken [-Wsometimes-uninitialized]

>          default:

>          ^~~~~~~

> drivers/net/ethernet/mellanox/mlx5/core/en_accel/ktls_tx.c:255:46: note: uninitialized use occurs here

>          skip_static_post = !memcmp(rec_seq, &rn_be, rec_seq_sz);

>                                                      ^~~~~~~~~~

> 

>  From looking at the function logic, it seems that there is no

> sensible way to continue here, so just return early and hope

> for the best.

> 

> Fixes: d2ead1f360e8 ("net/mlx5e: Add kTLS TX HW offload support")

> Signed-off-by: Arnd Bergmann <arnd@arndb.de>

> ---

>   drivers/net/ethernet/mellanox/mlx5/core/en_accel/ktls_tx.c | 1 +

>   1 file changed, 1 insertion(+)

> 

> diff --git a/drivers/net/ethernet/mellanox/mlx5/core/en_accel/ktls_tx.c b/drivers/net/ethernet/mellanox/mlx5/core/en_accel/ktls_tx.c

> index 3f5f4317a22b..5c08891806f0 100644

> --- a/drivers/net/ethernet/mellanox/mlx5/core/en_accel/ktls_tx.c

> +++ b/drivers/net/ethernet/mellanox/mlx5/core/en_accel/ktls_tx.c

> @@ -250,6 +250,7 @@ tx_post_resync_params(struct mlx5e_txqsq *sq,

>   	}

>   	default:

>   		WARN_ON(1);

> +		return;

>   	}

>   

>   	skip_static_post = !memcmp(rec_seq, &rn_be, rec_seq_sz);

> 


Reviewed-by: Tariq Toukan <tariqt@mellanox.com>


Thanks!
Nathan Chancellor July 10, 2019, 5:14 p.m. UTC | #2
On Wed, Jul 10, 2019 at 03:06:25PM +0200, Arnd Bergmann wrote:
> clang points to a variable being used in an unexpected

> code path:

> 

> drivers/net/ethernet/mellanox/mlx5/core/en_accel/ktls_tx.c:251:2: warning: variable 'rec_seq_sz' is used uninitialized whenever switch default is taken [-Wsometimes-uninitialized]

>         default:

>         ^~~~~~~

> drivers/net/ethernet/mellanox/mlx5/core/en_accel/ktls_tx.c:255:46: note: uninitialized use occurs here

>         skip_static_post = !memcmp(rec_seq, &rn_be, rec_seq_sz);

>                                                     ^~~~~~~~~~

> 

> From looking at the function logic, it seems that there is no

> sensible way to continue here, so just return early and hope

> for the best.

> 

> Fixes: d2ead1f360e8 ("net/mlx5e: Add kTLS TX HW offload support")

> Signed-off-by: Arnd Bergmann <arnd@arndb.de>

> ---

>  drivers/net/ethernet/mellanox/mlx5/core/en_accel/ktls_tx.c | 1 +

>  1 file changed, 1 insertion(+)

> 

> diff --git a/drivers/net/ethernet/mellanox/mlx5/core/en_accel/ktls_tx.c b/drivers/net/ethernet/mellanox/mlx5/core/en_accel/ktls_tx.c

> index 3f5f4317a22b..5c08891806f0 100644

> --- a/drivers/net/ethernet/mellanox/mlx5/core/en_accel/ktls_tx.c

> +++ b/drivers/net/ethernet/mellanox/mlx5/core/en_accel/ktls_tx.c

> @@ -250,6 +250,7 @@ tx_post_resync_params(struct mlx5e_txqsq *sq,

>  	}

>  	default:

>  		WARN_ON(1);

> +		return;

>  	}

>  

>  	skip_static_post = !memcmp(rec_seq, &rn_be, rec_seq_sz);

> -- 

> 2.20.0

> 


Looks like my identical patch got picked up in net-next:

https://git.kernel.org/davem/net-next/c/1ff2f0fa450ea4e4f87793d9ed513098ec6e12be

Good to know the fix was the same.

Cheers,
Nathan
diff mbox series

Patch

diff --git a/drivers/net/ethernet/mellanox/mlx5/core/en_accel/ktls_tx.c b/drivers/net/ethernet/mellanox/mlx5/core/en_accel/ktls_tx.c
index 3f5f4317a22b..5c08891806f0 100644
--- a/drivers/net/ethernet/mellanox/mlx5/core/en_accel/ktls_tx.c
+++ b/drivers/net/ethernet/mellanox/mlx5/core/en_accel/ktls_tx.c
@@ -250,6 +250,7 @@  tx_post_resync_params(struct mlx5e_txqsq *sq,
 	}
 	default:
 		WARN_ON(1);
+		return;
 	}
 
 	skip_static_post = !memcmp(rec_seq, &rn_be, rec_seq_sz);