diff options
| -rw-r--r-- | drivers/infiniband/ulp/ipoib/ipoib_multicast.c | 8 |
1 files changed, 6 insertions, 2 deletions
diff --git a/drivers/infiniband/ulp/ipoib/ipoib_multicast.c b/drivers/infiniband/ulp/ipoib/ipoib_multicast.c index eee66d13e5b9..ffb83b5f7e80 100644 --- a/drivers/infiniband/ulp/ipoib/ipoib_multicast.c +++ b/drivers/infiniband/ulp/ipoib/ipoib_multicast.c | |||
| @@ -190,6 +190,12 @@ static int ipoib_mcast_join_finish(struct ipoib_mcast *mcast, | |||
| 190 | spin_unlock_irq(&priv->lock); | 190 | spin_unlock_irq(&priv->lock); |
| 191 | priv->tx_wr.wr.ud.remote_qkey = priv->qkey; | 191 | priv->tx_wr.wr.ud.remote_qkey = priv->qkey; |
| 192 | set_qkey = 1; | 192 | set_qkey = 1; |
| 193 | |||
| 194 | if (!ipoib_cm_admin_enabled(dev)) { | ||
| 195 | rtnl_lock(); | ||
| 196 | dev_set_mtu(dev, min(priv->mcast_mtu, priv->admin_mtu)); | ||
| 197 | rtnl_unlock(); | ||
| 198 | } | ||
| 193 | } | 199 | } |
| 194 | 200 | ||
| 195 | if (!test_bit(IPOIB_MCAST_FLAG_SENDONLY, &mcast->flags)) { | 201 | if (!test_bit(IPOIB_MCAST_FLAG_SENDONLY, &mcast->flags)) { |
| @@ -365,8 +371,6 @@ void ipoib_mcast_carrier_on_task(struct work_struct *work) | |||
| 365 | } | 371 | } |
| 366 | 372 | ||
| 367 | rtnl_lock(); | 373 | rtnl_lock(); |
| 368 | if (!ipoib_cm_admin_enabled(priv->dev)) | ||
| 369 | dev_set_mtu(priv->dev, min(priv->mcast_mtu, priv->admin_mtu)); | ||
| 370 | netif_carrier_on(priv->dev); | 374 | netif_carrier_on(priv->dev); |
| 371 | rtnl_unlock(); | 375 | rtnl_unlock(); |
| 372 | } | 376 | } |
