diff options
author | Eli Cohen <eli@dev.mellanox.co.il> | 2008-04-29 16:46:53 -0400 |
---|---|---|
committer | Roland Dreier <rolandd@cisco.com> | 2008-04-29 16:46:53 -0400 |
commit | b4132efa1a47858d741ecb05b8735e6fcb603bc8 (patch) | |
tree | 7345487035fb8725d5f6d3edeaf23839eef1da7e /drivers | |
parent | baaad380c0aa955f7d62e846467316c94067f1a5 (diff) |
IPoIB: Copy child MTU from parent
When creating a child interface, copy the MTU information from the
parent. Otherwise when the child's multicast join completes, the MTU
will not be updated since the code does
dev->mtu = min(priv->mcast_mtu, priv->admin_mtu);
and priv->admin_mtu will be set to 0.
Signed-off-by: Eli Cohen <eli@mellanox.co.il>
Signed-off-by: Roland Dreier <rolandd@cisco.com>
Diffstat (limited to 'drivers')
-rw-r--r-- | drivers/infiniband/ulp/ipoib/ipoib_vlan.c | 3 |
1 files changed, 3 insertions, 0 deletions
diff --git a/drivers/infiniband/ulp/ipoib/ipoib_vlan.c b/drivers/infiniband/ulp/ipoib/ipoib_vlan.c index 431fdeaa2dc4..1cdb5cfb0ff1 100644 --- a/drivers/infiniband/ulp/ipoib/ipoib_vlan.c +++ b/drivers/infiniband/ulp/ipoib/ipoib_vlan.c | |||
@@ -90,6 +90,9 @@ int ipoib_vlan_add(struct net_device *pdev, unsigned short pkey) | |||
90 | } | 90 | } |
91 | 91 | ||
92 | priv->max_ib_mtu = ppriv->max_ib_mtu; | 92 | priv->max_ib_mtu = ppriv->max_ib_mtu; |
93 | /* MTU will be reset when mcast join happens */ | ||
94 | priv->dev->mtu = IPOIB_UD_MTU(priv->max_ib_mtu); | ||
95 | priv->mcast_mtu = priv->admin_mtu = priv->dev->mtu; | ||
93 | set_bit(IPOIB_FLAG_SUBINTERFACE, &priv->flags); | 96 | set_bit(IPOIB_FLAG_SUBINTERFACE, &priv->flags); |
94 | 97 | ||
95 | priv->pkey = pkey; | 98 | priv->pkey = pkey; |