[PATCH] net/mlx5e: Fix an error code in mlx5e_arfs_create_tables()

Subsystems: mellanox ethernet driver (mlx5e), mellanox mlx5 core vpi driver, networking drivers, the rest

STALE1895d

3 messages, 3 authors, 2021-06-03 · open the first message on its own page

[PATCH] net/mlx5e: Fix an error code in mlx5e_arfs_create_tables()

From: Yang Li <hidden>
Date: 2021-06-02 10:09:25

When the code execute 'if (!priv->fs.arfs->wq)', the value of err is 0.
So, we use -ENOMEM to indicate that the function 
create_singlethread_workqueue() return NULL.

Clean up smatch warning:
drivers/net/ethernet/mellanox/mlx5/core/en_arfs.c:373
mlx5e_arfs_create_tables() warn: missing error code 'err'.

Reported-by: Abaci Robot <redacted>
Fixes: 'commit f6755b80d693 ("net/mlx5e: Dynamic alloc arfs table for netdev when needed")'
Signed-off-by: Yang Li <redacted>
---
 drivers/net/ethernet/mellanox/mlx5/core/en_arfs.c | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)
diff --git a/drivers/net/ethernet/mellanox/mlx5/core/en_arfs.c b/drivers/net/ethernet/mellanox/mlx5/core/en_arfs.c
index 5cd466e..2949437 100644
--- a/drivers/net/ethernet/mellanox/mlx5/core/en_arfs.c
+++ b/drivers/net/ethernet/mellanox/mlx5/core/en_arfs.c
@@ -369,8 +369,10 @@ int mlx5e_arfs_create_tables(struct mlx5e_priv *priv)
 	spin_lock_init(&priv->fs.arfs->arfs_lock);
 	INIT_LIST_HEAD(&priv->fs.arfs->rules);
 	priv->fs.arfs->wq = create_singlethread_workqueue("mlx5e_arfs");
-	if (!priv->fs.arfs->wq)
+	if (!priv->fs.arfs->wq) {
+		err = -ENOMEM;
 		goto err;
+	}
 
 	for (i = 0; i < ARFS_NUM_TYPES; i++) {
 		err = arfs_create_table(priv, i);
-- 
1.8.3.1

Re: [PATCH] net/mlx5e: Fix an error code in mlx5e_arfs_create_tables()

From: Mark Zhang <hidden>
Date: 2021-06-02 11:49:31

On 6/2/2021 6:09 PM, Yang Li wrote:
quoted hunk
When the code execute 'if (!priv->fs.arfs->wq)', the value of err is 0.
So, we use -ENOMEM to indicate that the function
create_singlethread_workqueue() return NULL.

Clean up smatch warning:
drivers/net/ethernet/mellanox/mlx5/core/en_arfs.c:373
mlx5e_arfs_create_tables() warn: missing error code 'err'.

Reported-by: Abaci Robot <redacted>
Fixes: 'commit f6755b80d693 ("net/mlx5e: Dynamic alloc arfs table for netdev when needed")'
Signed-off-by: Yang Li <redacted>
---
  drivers/net/ethernet/mellanox/mlx5/core/en_arfs.c | 4 +++-
  1 file changed, 3 insertions(+), 1 deletion(-)
diff --git a/drivers/net/ethernet/mellanox/mlx5/core/en_arfs.c b/drivers/net/ethernet/mellanox/mlx5/core/en_arfs.c
index 5cd466e..2949437 100644
--- a/drivers/net/ethernet/mellanox/mlx5/core/en_arfs.c
+++ b/drivers/net/ethernet/mellanox/mlx5/core/en_arfs.c
@@ -369,8 +369,10 @@ int mlx5e_arfs_create_tables(struct mlx5e_priv *priv)
  	spin_lock_init(&priv->fs.arfs->arfs_lock);
  	INIT_LIST_HEAD(&priv->fs.arfs->rules);
  	priv->fs.arfs->wq = create_singlethread_workqueue("mlx5e_arfs");
-	if (!priv->fs.arfs->wq)
+	if (!priv->fs.arfs->wq) {
+		err = -ENOMEM;
  		goto err;
+	}
  
  	for (i = 0; i < ARFS_NUM_TYPES; i++) {
  		err = arfs_create_table(priv, i);
Maybe also need to "destroy_workqueue(priv->fs.arfs->wq);" in err_des.

Re: [PATCH] net/mlx5e: Fix an error code in mlx5e_arfs_create_tables()

From: Saeed Mahameed <saeed@kernel.org>
Date: 2021-06-03 19:28:37

On Wed, 2021-06-02 at 19:49 +0800, Mark Zhang wrote:
On 6/2/2021 6:09 PM, Yang Li wrote:
quoted
When the code execute 'if (!priv->fs.arfs->wq)', the value of err
is 0.
So, we use -ENOMEM to indicate that the function
create_singlethread_workqueue() return NULL.

Clean up smatch warning:
drivers/net/ethernet/mellanox/mlx5/core/en_arfs.c:373
mlx5e_arfs_create_tables() warn: missing error code 'err'.

Reported-by: Abaci Robot <redacted>
Fixes: 'commit f6755b80d693 ("net/mlx5e: Dynamic alloc arfs table
for netdev when needed")'
This is not the right format.

Please use the following command to generate the fixes tag:
git log -1 --abbrev=12 --format='Fixes: %h ("%s")' f6755b80d693
quoted
Signed-off-by: Yang Li <redacted>
---
  drivers/net/ethernet/mellanox/mlx5/core/en_arfs.c | 4 +++-
  1 file changed, 3 insertions(+), 1 deletion(-)
diff --git a/drivers/net/ethernet/mellanox/mlx5/core/en_arfs.c
b/drivers/net/ethernet/mellanox/mlx5/core/en_arfs.c
index 5cd466e..2949437 100644
--- a/drivers/net/ethernet/mellanox/mlx5/core/en_arfs.c
+++ b/drivers/net/ethernet/mellanox/mlx5/core/en_arfs.c
@@ -369,8 +369,10 @@ int mlx5e_arfs_create_tables(struct mlx5e_priv
*priv)
        spin_lock_init(&priv->fs.arfs->arfs_lock);
        INIT_LIST_HEAD(&priv->fs.arfs->rules);
        priv->fs.arfs->wq =
create_singlethread_workqueue("mlx5e_arfs");
-       if (!priv->fs.arfs->wq)
+       if (!priv->fs.arfs->wq) {
+               err = -ENOMEM;
                goto err;
+       }
  
you can just initialize err to -ENOMEM; on declaration. 
quoted
        for (i = 0; i < ARFS_NUM_TYPES; i++) {
                err = arfs_create_table(priv, i);
Maybe also need to "destroy_workqueue(priv->fs.arfs->wq);" in
err_des.
yes, it can be in the same patch.

Thanks a lot.  


Keyboard shortcuts
hback out one level
jnext message in thread
kprevious message in thread
ldrill in
Escclose help / fold thread tree
?toggle this help