aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorDenis Vlasenko <vda@ilport.com.ua>2005-08-11 18:32:53 -0400
committerDavid S. Miller <davem@sunset.davemloft.net>2005-08-29 18:57:08 -0400
commit0a242efc4fb859b2da506cdf8f3366231602e4ff (patch)
treea4f4174ba8ccdedf892cc3358033b61e1a92babd
parent5917ed961def82a4dba9198d11a75f79d115a8cb (diff)
[NET]: Deinline netif_carrier_{on,off}().
# grep -r 'netif_carrier_o[nf]' linux-2.6.12 | wc -l 246 # size vmlinux.org vmlinux.carrier text data bss dec hex filename 4339634 1054414 259296 5653344 564360 vmlinux.org 4337710 1054414 259296 5651420 563bdc vmlinux.carrier And this ain't an allyesconfig kernel! Signed-off-by: David S. Miller <davem@davemloft.net>
-rw-r--r--include/linux/netdevice.h14
-rw-r--r--net/sched/sch_generic.c16
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
700extern void __netdev_watchdog_up(struct net_device *dev); 700extern void __netdev_watchdog_up(struct net_device *dev);
701 701
702static inline void netif_carrier_on(struct net_device *dev) 702extern 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
710static inline void netif_carrier_off(struct net_device *dev) 704extern 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. */
717static inline int netif_device_present(struct net_device *dev) 707static 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
241void 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
249void 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
602EXPORT_SYMBOL(__netdev_watchdog_up); 616EXPORT_SYMBOL(__netdev_watchdog_up);
617EXPORT_SYMBOL(netif_carrier_on);
618EXPORT_SYMBOL(netif_carrier_off);
603EXPORT_SYMBOL(noop_qdisc); 619EXPORT_SYMBOL(noop_qdisc);
604EXPORT_SYMBOL(noop_qdisc_ops); 620EXPORT_SYMBOL(noop_qdisc_ops);
605EXPORT_SYMBOL(qdisc_create_dflt); 621EXPORT_SYMBOL(qdisc_create_dflt);