[ofa-general] Re: locking requirements when calling dev_set_mtu()

Stephen Hemminger shemminger at vyatta.com
Wed Jul 2 09:41:40 PDT 2008


On Wed, 2 Jul 2008 11:54:09 +0300
Eli Cohen <eli at dev.mellanox.co.il> wrote:

> Hi,
> 
> I have the need to change the MTU of IP over IB from the driver code
> and not from the shell. Looking for the right way to do it I came
> across the dev_set_mtu() which seems appropriate as it handles all
> notifications too. However, it is not clear to me whether I have to
> wrap the call to dev_set_mtu() with any locks. Specifically, I was
> referred to a mail thread that suggests that I have to use
> rtnl_lock()/rtnl_unlock():
> http://marc.info/?l=linux-netdev&m=121201324611292&w=2
> 
> With reference to the above URL, I would say that it is possible for
> me to hit to the assertion ASSERT_RTNL() if I don't take rtnl_lock
> prior to calling dev_set_mtu(). However I don't hit it, though I can't
> count on that there will not be a case that any function registered
> for notification would expect to see the lock acquired.
> 

You need to call rtnl_lock() so device drivers get consistent locking.



More information about the general mailing list