Netdev List
 help / color / mirror / Atom feed
From: Saeed Mahameed <saeedm@mellanox.com>
To: "David S. Miller" <davem@davemloft.net>
Cc: "netdev@vger.kernel.org" <netdev@vger.kernel.org>,
	Jakub Kicinski <jakub.kicinski@netronome.com>,
	Mark Zhang <markz@mellanox.com>,
	Parav Pandit <parav@mellanox.com>,
	Leon Romanovsky <leonro@mellanox.com>,
	Saeed Mahameed <saeedm@mellanox.com>
Subject: [net 1/9] net/mlx5: Use reversed order when unregister devices
Date: Thu, 25 Jul 2019 20:36:35 +0000	[thread overview]
Message-ID: <20190725203618.11011-2-saeedm@mellanox.com> (raw)
In-Reply-To: <20190725203618.11011-1-saeedm@mellanox.com>

From: Mark Zhang <markz@mellanox.com>

When lag is active, which is controlled by the bonded mlx5e netdev, mlx5
interface unregestering must happen in the reverse order where rdma is
unregistered (unloaded) first, to guarantee all references to the lag
context in hardware is removed, then remove mlx5e netdev interface which
will cleanup the lag context from hardware.

Without this fix during destroy of LAG interface, we observed following
errors:
 * mlx5_cmd_check:752:(pid 12556): DESTROY_LAG(0x843) op_mod(0x0) failed,
   status bad parameter(0x3), syndrome (0xe4ac33)
 * mlx5_cmd_check:752:(pid 12556): DESTROY_LAG(0x843) op_mod(0x0) failed,
   status bad parameter(0x3), syndrome (0xa5aee8).

Fixes: a31208b1e11d ("net/mlx5_core: New init and exit flow for mlx5_core")
Reviewed-by: Parav Pandit <parav@mellanox.com>
Reviewed-by: Leon Romanovsky <leonro@mellanox.com>
Signed-off-by: Mark Zhang <markz@mellanox.com>
Signed-off-by: Saeed Mahameed <saeedm@mellanox.com>
---
 drivers/net/ethernet/mellanox/mlx5/core/dev.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/drivers/net/ethernet/mellanox/mlx5/core/dev.c b/drivers/net/ethernet/mellanox/mlx5/core/dev.c
index 5bb6a26ea267..50862275544e 100644
--- a/drivers/net/ethernet/mellanox/mlx5/core/dev.c
+++ b/drivers/net/ethernet/mellanox/mlx5/core/dev.c
@@ -213,7 +213,7 @@ void mlx5_unregister_device(struct mlx5_core_dev *dev)
 	struct mlx5_interface *intf;
 
 	mutex_lock(&mlx5_intf_mutex);
-	list_for_each_entry(intf, &intf_list, list)
+	list_for_each_entry_reverse(intf, &intf_list, list)
 		mlx5_remove_device(intf, priv);
 	list_del(&priv->dev_list);
 	mutex_unlock(&mlx5_intf_mutex);
-- 
2.21.0


  reply	other threads:[~2019-07-25 20:36 UTC|newest]

Thread overview: 16+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2019-07-25 20:36 [pull request][net 0/9] Mellanox, mlx5 fixes 2019-07-25 Saeed Mahameed
2019-07-25 20:36 ` Saeed Mahameed [this message]
2019-07-25 20:36 ` [net 2/9] net/mlx5: Add missing RDMA_RX capabilities Saeed Mahameed
2019-07-25 20:36 ` [net 3/9] net/mlx5: Fix modify_cq_in alignment Saeed Mahameed
2019-07-25 20:36 ` [net 4/9] net/mlx5e: Fix wrong max num channels indication Saeed Mahameed
2019-07-25 20:36 ` [net 5/9] net/mlx5e: Fix matching of speed to PRM link modes Saeed Mahameed
2019-07-25 20:36 ` [net 6/9] net/mlx5e: Prevent encap flow counter update async to user query Saeed Mahameed
2019-07-25 20:36 ` [net 7/9] net/mlx5e: kTLS, Call WARN_ONCE on netdev mismatch Saeed Mahameed
2019-07-25 20:48   ` Jakub Kicinski
2019-07-25 20:49   ` Jakub Kicinski
2019-07-26 21:41     ` Saeed Mahameed
2019-07-25 20:36 ` [net 8/9] nfp: tls: rename tls packet counters Saeed Mahameed
2019-07-25 20:50   ` Jakub Kicinski
2019-07-25 20:36 ` [net 9/9] Documentation: TLS: fix stat counters description Saeed Mahameed
2019-07-25 20:53   ` Jakub Kicinski
2019-07-26 21:34 ` [pull request][net 0/9] Mellanox, mlx5 fixes 2019-07-25 David Miller

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=20190725203618.11011-2-saeedm@mellanox.com \
    --to=saeedm@mellanox.com \
    --cc=davem@davemloft.net \
    --cc=jakub.kicinski@netronome.com \
    --cc=leonro@mellanox.com \
    --cc=markz@mellanox.com \
    --cc=netdev@vger.kernel.org \
    --cc=parav@mellanox.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox