Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 842a9c83 authored by Or Gerlitz's avatar Or Gerlitz Committed by Jason Gunthorpe
Browse files

IB/mlx5: Simplify netdev unbinding



When dealing with netdev unregister events, we just need to know that this
is our currently bounded netdev. There's no need to do any further
checks/queries.

This patch doesn't change any functionality.

Signed-off-by: default avatarOr Gerlitz <ogerlitz@mellanox.com>
Reviewed-by: default avatarMark Bloch <markb@mellanox.com>
Signed-off-by: default avatarSaeed Mahameed <saeedm@mellanox.com>
Signed-off-by: default avatarLeon Romanovsky <leonro@mellanox.com>
Signed-off-by: default avatarJason Gunthorpe <jgg@mellanox.com>
parent 641d1207
Loading
Loading
Loading
Loading
+9 −5
Original line number Diff line number Diff line
@@ -172,7 +172,6 @@ static int mlx5_netdev_event(struct notifier_block *this,

	switch (event) {
	case NETDEV_REGISTER:
	case NETDEV_UNREGISTER:
		write_lock(&roce->netdev_lock);
		if (ibdev->rep) {
			struct mlx5_eswitch *esw = ibdev->mdev->priv.eswitch;
@@ -181,15 +180,20 @@ static int mlx5_netdev_event(struct notifier_block *this,
			rep_ndev = mlx5_ib_get_rep_netdev(esw,
							  ibdev->rep->vport);
			if (rep_ndev == ndev)
				roce->netdev = (event == NETDEV_UNREGISTER) ?
					NULL : ndev;
				roce->netdev = ndev;
		} else if (ndev->dev.parent == &mdev->pdev->dev) {
			roce->netdev = (event == NETDEV_UNREGISTER) ?
				NULL : ndev;
			roce->netdev = ndev;
		}
		write_unlock(&roce->netdev_lock);
		break;

	case NETDEV_UNREGISTER:
		write_lock(&roce->netdev_lock);
		if (roce->netdev == ndev)
			roce->netdev = NULL;
		write_unlock(&roce->netdev_lock);
		break;

	case NETDEV_CHANGE:
	case NETDEV_UP:
	case NETDEV_DOWN: {