diff options
author | Or Gerlitz <ogerlitz@mellanox.com> | 2014-03-13 14:52:15 +0200 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2014-03-13 13:35:40 -0400 |
commit | de123268300fd33b7f7668fda3264059daffa6ef (patch) | |
tree | dd70efbcd1b7f09acbeb6be6763839bb01d1f8a2 | |
parent | 0a8d8c446b5429d15ff2d48f46e00d8a08552303 (diff) | |
download | op-kernel-dev-de123268300fd33b7f7668fda3264059daffa6ef.zip op-kernel-dev-de123268300fd33b7f7668fda3264059daffa6ef.tar.gz |
net/mlx4_en: Deregister multicast vxlan steering rules when going down
When mlx4_en_stop_port() is called, we need to deregister also the
tunnel steering rules that relate to multicast.
Signed-off-by: Or Gerlitz <ogerlitz@mellanox.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
-rw-r--r-- | drivers/net/ethernet/mellanox/mlx4/en_netdev.c | 2 |
1 files changed, 2 insertions, 0 deletions
diff --git a/drivers/net/ethernet/mellanox/mlx4/en_netdev.c b/drivers/net/ethernet/mellanox/mlx4/en_netdev.c index ba212611..84a96f7 100644 --- a/drivers/net/ethernet/mellanox/mlx4/en_netdev.c +++ b/drivers/net/ethernet/mellanox/mlx4/en_netdev.c @@ -1800,6 +1800,8 @@ void mlx4_en_stop_port(struct net_device *dev, int detach) mc_list[5] = priv->port; mlx4_multicast_detach(mdev->dev, &priv->rss_map.indir_qp, mc_list, MLX4_PROT_ETH, mclist->reg_id); + if (mclist->tunnel_reg_id) + mlx4_flow_detach(mdev->dev, mclist->tunnel_reg_id); } mlx4_en_clear_list(dev); list_for_each_entry_safe(mclist, tmp, &priv->curr_list, list) { |