[ofa-general] Re: regression

Steve Wise swise at opengridcomputing.com
Mon Jul 7 16:08:04 PDT 2008


Roland Dreier wrote:
>  >  > I just noticed that the change it iwch_provider.c in commit
>  >  > f4e91eb4a81559da87a3843758a641b5cc590b65 ["IB: convert struct
>  >  > class_device to struct device"] undid the fix done in commit
>  >  > 7f049f2f4259e4a5c213720df1ce0c2ca095641a ["RDMA/cxgb3: Hold
>  >  > rtnl_lock() around ethtool get_drvinfo call"].  It removed the calls
>  >  > to rtnl_lock() that serialized the iw_cxgb3 ethtool ops calls into
>  >  > the cxgb3 driver.
>  >  > 
>  >  > Shall I add a patch to reintroduce the fix?
>  > 
>  > Yeah, definitely... I can't see any reason why the rtnl_lock would be
>  > safe to remove.
>
> although it's not clear to me that it's kosher for the cxgb3 get_drvinfo
> ethtool op to require serialization...
>   

ethtool ops assume the rtnl_lock is held.  From net/core/dev.c:

                case SIOCETHTOOL:
                        dev_load(net, ifr.ifr_name);
                        rtnl_lock();
                        ret = dev_ethtool(net, &ifr);
                        rtnl_unlock();



I'm just avoiding the overhead of building the ifr struct and calling 
the ioctl...





More information about the general mailing list