Re: [PATCH 4/4] [NETDEV] sky2: rtnl_lock out of loop will be faster
Wang Chen wrote: [PATCH 4/4] [NETDEV] sky2: rtnl_lock out of loop will be faster Before this patch, it gets and releases the lock at each iteration of the loop. Changing unregister_netdev to unregister_netdevice and locking outside of the loop will be faster for this approach. Signed-off-by: Wang Chen <[EMAIL PROTECTED]> --- sky2.c |4 +++- 1 files changed, 3 insertions(+), 1 deletion(-) --- linux-2.6.24.rc5.org/drivers/net/sky2.c 2007-12-12 10:19:43.0 +0800 +++ linux-2.6.24.rc5/drivers/net/sky2.c 2007-12-12 15:23:37.0 +0800 @@ -4270,8 +4270,10 @@ static void __devexit sky2_remove(struct del_timer_sync(&hw->watchdog_timer); cancel_work_sync(&hw->restart_work); + rtnl_lock(); for (i = hw->ports-1; i >= 0; --i) - unregister_netdev(hw->dev[i]); + unregister_netdevice(hw->dev[i]); + rtnl_unlock(); while true and correct, I don't see the remove path as needing this type of micro-optimization. Removing and shutting down hardware is an operation that can take many seconds (an eternity, to a computer)... a very slow operation. Thus, given that speed is not a priority here, I place more value on smaller, more compact, easily reviewable code -- the existing unpatched code in this case. Jeff -- To unsubscribe from this list: send the line "unsubscribe netdev" in the body of a message to [EMAIL PROTECTED] More majordomo info at http://vger.kernel.org/majordomo-info.html
Re: [PATCH 4/4] [NETDEV] sky2: rtnl_lock out of loop will be faster
Stephen Hemminger said the following on 2007-12-13 0:30: > Umm, okay but it doesn't matter really, there can only be 2 ports and > 90+% of the boards only have one port. So why bother?? > Thanks Stephen. David, please ignore all of the four patches. -- To unsubscribe from this list: send the line "unsubscribe netdev" in the body of a message to [EMAIL PROTECTED] More majordomo info at http://vger.kernel.org/majordomo-info.html
Re: [PATCH 4/4] [NETDEV] sky2: rtnl_lock out of loop will be faster
On Wed, 12 Dec 2007 16:50:09 +0800 Wang Chen <[EMAIL PROTECTED]> wrote: > [PATCH 4/4] [NETDEV] sky2: rtnl_lock out of loop will be faster > > Before this patch, it gets and releases the lock at each > iteration of the loop. Changing unregister_netdev to > unregister_netdevice and locking outside of the loop will > be faster for this approach. > > Signed-off-by: Wang Chen <[EMAIL PROTECTED]> > --- > sky2.c |4 +++- > 1 files changed, 3 insertions(+), 1 deletion(-) > > --- linux-2.6.24.rc5.org/drivers/net/sky2.c 2007-12-12 10:19:43.0 > +0800 > +++ linux-2.6.24.rc5/drivers/net/sky2.c 2007-12-12 15:23:37.0 > +0800 > @@ -4270,8 +4270,10 @@ static void __devexit sky2_remove(struct > del_timer_sync(&hw->watchdog_timer); > cancel_work_sync(&hw->restart_work); > > + rtnl_lock(); > for (i = hw->ports-1; i >= 0; --i) > - unregister_netdev(hw->dev[i]); > + unregister_netdevice(hw->dev[i]); > + rtnl_unlock(); > > sky2_write32(hw, B0_IMSK, 0); > Umm, okay but it doesn't matter really, there can only be 2 ports and 90+% of the boards only have one port. So why bother?? -- Stephen Hemminger <[EMAIL PROTECTED]> -- To unsubscribe from this list: send the line "unsubscribe netdev" in the body of a message to [EMAIL PROTECTED] More majordomo info at http://vger.kernel.org/majordomo-info.html
[PATCH 4/4] [NETDEV] sky2: rtnl_lock out of loop will be faster
[PATCH 4/4] [NETDEV] sky2: rtnl_lock out of loop will be faster Before this patch, it gets and releases the lock at each iteration of the loop. Changing unregister_netdev to unregister_netdevice and locking outside of the loop will be faster for this approach. Signed-off-by: Wang Chen <[EMAIL PROTECTED]> --- sky2.c |4 +++- 1 files changed, 3 insertions(+), 1 deletion(-) --- linux-2.6.24.rc5.org/drivers/net/sky2.c 2007-12-12 10:19:43.0 +0800 +++ linux-2.6.24.rc5/drivers/net/sky2.c 2007-12-12 15:23:37.0 +0800 @@ -4270,8 +4270,10 @@ static void __devexit sky2_remove(struct del_timer_sync(&hw->watchdog_timer); cancel_work_sync(&hw->restart_work); + rtnl_lock(); for (i = hw->ports-1; i >= 0; --i) - unregister_netdev(hw->dev[i]); + unregister_netdevice(hw->dev[i]); + rtnl_unlock(); sky2_write32(hw, B0_IMSK, 0); -- To unsubscribe from this list: send the line "unsubscribe netdev" in the body of a message to [EMAIL PROTECTED] More majordomo info at http://vger.kernel.org/majordomo-info.html