diff options
-rw-r--r-- | include/linux/netdevice.h | 14 | ||||
-rw-r--r-- | net/sched/sch_generic.c | 16 |
2 files changed, 18 insertions, 12 deletions
diff --git a/include/linux/netdevice.h b/include/linux/netdevice.h index 296cf93a65e0..d8e52edfd526 100644 --- a/include/linux/netdevice.h +++ b/include/linux/netdevice.h | |||
@@ -699,19 +699,9 @@ static inline int netif_carrier_ok(const struct net_device *dev) | |||
699 | 699 | ||
700 | extern void __netdev_watchdog_up(struct net_device *dev); | 700 | extern void __netdev_watchdog_up(struct net_device *dev); |
701 | 701 | ||
702 | static inline void netif_carrier_on(struct net_device *dev) | 702 | extern void netif_carrier_on(struct net_device *dev); |
703 | { | ||
704 | if (test_and_clear_bit(__LINK_STATE_NOCARRIER, &dev->state)) | ||
705 | linkwatch_fire_event(dev); | ||
706 | if (netif_running(dev)) | ||
707 | __netdev_watchdog_up(dev); | ||
708 | } | ||
709 | 703 | ||
710 | static inline void netif_carrier_off(struct net_device *dev) | 704 | extern void netif_carrier_off(struct net_device *dev); |
711 | { | ||
712 | if (!test_and_set_bit(__LINK_STATE_NOCARRIER, &dev->state)) | ||
713 | linkwatch_fire_event(dev); | ||
714 | } | ||
715 | 705 | ||
716 | /* Hot-plugging. */ | 706 | /* Hot-plugging. */ |
717 | static inline int netif_device_present(struct net_device *dev) | 707 | static inline int netif_device_present(struct net_device *dev) |
diff --git a/net/sched/sch_generic.c b/net/sched/sch_generic.c index 0d066c965342..99ceb91f0150 100644 --- a/net/sched/sch_generic.c +++ b/net/sched/sch_generic.c | |||
@@ -238,6 +238,20 @@ static void dev_watchdog_down(struct net_device *dev) | |||
238 | spin_unlock_bh(&dev->xmit_lock); | 238 | spin_unlock_bh(&dev->xmit_lock); |
239 | } | 239 | } |
240 | 240 | ||
241 | void netif_carrier_on(struct net_device *dev) | ||
242 | { | ||
243 | if (test_and_clear_bit(__LINK_STATE_NOCARRIER, &dev->state)) | ||
244 | linkwatch_fire_event(dev); | ||
245 | if (netif_running(dev)) | ||
246 | __netdev_watchdog_up(dev); | ||
247 | } | ||
248 | |||
249 | void netif_carrier_off(struct net_device *dev) | ||
250 | { | ||
251 | if (!test_and_set_bit(__LINK_STATE_NOCARRIER, &dev->state)) | ||
252 | linkwatch_fire_event(dev); | ||
253 | } | ||
254 | |||
241 | /* "NOOP" scheduler: the best scheduler, recommended for all interfaces | 255 | /* "NOOP" scheduler: the best scheduler, recommended for all interfaces |
242 | under all circumstances. It is difficult to invent anything faster or | 256 | under all circumstances. It is difficult to invent anything faster or |
243 | cheaper. | 257 | cheaper. |
@@ -600,6 +614,8 @@ void dev_shutdown(struct net_device *dev) | |||
600 | } | 614 | } |
601 | 615 | ||
602 | EXPORT_SYMBOL(__netdev_watchdog_up); | 616 | EXPORT_SYMBOL(__netdev_watchdog_up); |
617 | EXPORT_SYMBOL(netif_carrier_on); | ||
618 | EXPORT_SYMBOL(netif_carrier_off); | ||
603 | EXPORT_SYMBOL(noop_qdisc); | 619 | EXPORT_SYMBOL(noop_qdisc); |
604 | EXPORT_SYMBOL(noop_qdisc_ops); | 620 | EXPORT_SYMBOL(noop_qdisc_ops); |
605 | EXPORT_SYMBOL(qdisc_create_dflt); | 621 | EXPORT_SYMBOL(qdisc_create_dflt); |