net: Optimize hard_start_xmit() return checking
[safe/jmp/linux-2.6] / net / core / link_watch.c
index 1e401e1..bf8f7af 100644 (file)
@@ -178,6 +178,7 @@ static void __linkwatch_run_queue(int urgent_only)
                 */
                clear_bit(__LINK_STATE_LINKWATCH_PENDING, &dev->state);
 
+               rfc2863_policy(dev);
                if (dev->flags & IFF_UP) {
                        if (netif_carrier_ok(dev))
                                dev_activate(dev);
@@ -214,12 +215,6 @@ void linkwatch_fire_event(struct net_device *dev)
 {
        bool urgent = linkwatch_urgent_event(dev);
 
-       rfc2863_policy(dev);
-
-       /* Some drivers call netif_carrier_off early */
-       if (dev->reg_state == NETREG_UNINITIALIZED)
-               return;
-
        if (!test_and_set_bit(__LINK_STATE_LINKWATCH_PENDING, &dev->state)) {
                dev_hold(dev);