diff mbox series

net/mlx5e: Removed useless code in function

Message ID 20220711093303.14511-1-subkhankulov@ispras.ru (mailing list archive)
State Not Applicable
Headers show
Series net/mlx5e: Removed useless code in function | expand

Commit Message

Rustam Subkhankulov July 11, 2022, 9:33 a.m. UTC
Comparison of eth_ft->ft with NULL is useless, because
get_flow_table() returns either pointer 'eth_ft'
such that eth_ft->ft != NULL, or an erroneous value that is
handled on return, causing mlx5e_ethtool_flow_replace()
to terminate before checking whether eth_ft->ft equals NULL.

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

Signed-off-by: Rustam Subkhankulov <subkhankulov@ispras.ru>
Fixes: 6dc6071cfcde ("net/mlx5e: Add ethtool flow steering support")
---
 drivers/net/ethernet/mellanox/mlx5/core/en_fs_ethtool.c | 5 +----
 1 file changed, 1 insertion(+), 4 deletions(-)

Comments

Saeed Mahameed July 13, 2022, 10:26 p.m. UTC | #1
On 11 Jul 12:33, Rustam Subkhankulov wrote:
>Comparison of eth_ft->ft with NULL is useless, because
>get_flow_table() returns either pointer 'eth_ft'
>such that eth_ft->ft != NULL, or an erroneous value that is
>handled on return, causing mlx5e_ethtool_flow_replace()
>to terminate before checking whether eth_ft->ft equals NULL.
>
>Found by Linux Verification Center (linuxtesting.org) with SVACE.
>
>Signed-off-by: Rustam Subkhankulov <subkhankulov@ispras.ru>
>Fixes: 6dc6071cfcde ("net/mlx5e: Add ethtool flow steering support")

Applied to net-next-mlx5 and removed the fixes tag. Since there is no bug
here.

Thanks,
Saeed.
diff mbox series

Patch

diff --git a/drivers/net/ethernet/mellanox/mlx5/core/en_fs_ethtool.c b/drivers/net/ethernet/mellanox/mlx5/core/en_fs_ethtool.c
index ad0d234632a3..9466202fd97b 100644
--- a/drivers/net/ethernet/mellanox/mlx5/core/en_fs_ethtool.c
+++ b/drivers/net/ethernet/mellanox/mlx5/core/en_fs_ethtool.c
@@ -742,10 +742,7 @@  mlx5e_ethtool_flow_replace(struct mlx5e_priv *priv,
 
 	eth_rule->flow_spec = *fs;
 	eth_rule->eth_ft = eth_ft;
-	if (!eth_ft->ft) {
-		err = -EINVAL;
-		goto del_ethtool_rule;
-	}
+
 	rule = add_ethtool_flow_rule(priv, eth_rule, eth_ft->ft, fs, rss_context);
 	if (IS_ERR(rule)) {
 		err = PTR_ERR(rule);