[ofa-general] [PATCH] IB/IPoIB: Fix change mtu when switching to UD mode

Eli Cohen eli at dev.mellanox.co.il
Tue Jul 1 00:15:59 PDT 2008


On Tue, Jul 01, 2008 at 09:28:44AM +0300, Or Gerlitz wrote:
> Please note that a flow which invokes call_netdevice_notifiers() should be 
> wrapped by rtnl_lock()/rtnl_unlock() and the context should be made 
> sleepable /non-atomic, etc the the consumers of this event might go to 
> sleep (eg on memory allocation for the skb of the netlink event to user 
> space etc).
I am not calling call_netdevice_notifiers() directly but through
dev_set_mtu() and the only other place I see that makes use of
dev_set_mtu() is bond_change_mtu() and it does not use
rtnl_lock()/rtnl_unlock().

>
> Eli, yes, using dev_set_mtu() seems the correct way to go, even though I 
> don't think it explains any of the ipoib problems I have came across over 
> the last days, which I reported to you on the list, so in that respect I 
> don't really understand your other email where you have pointed to me the 
> mtu/setting issue.
>
I was able to see bad results when moving to CM mode which were
resolved when I took that approach. Maybe we still have issues so
let's take them one by one.

Could you apply the patches I sent and check again? Also, please use
the same approach at ipoib_multicast.c as Roland noted. I used this
here and it does not have any bad impact, and I think it is
appropriate.



More information about the general mailing list