pkt_sched: Add qdisc_tx_is_noop() helper and use in IPV6.
authorDavid S. Miller <davem@davemloft.net>
Wed, 9 Jul 2008 06:01:27 +0000 (23:01 -0700)
committerDavid S. Miller <davem@davemloft.net>
Wed, 9 Jul 2008 06:01:27 +0000 (23:01 -0700)
This indicates if the NOOP scheduler is what is active for TX on a
given device.

Signed-off-by: David S. Miller <davem@davemloft.net>
include/net/sch_generic.h
net/ipv6/addrconf.c

index bf8f726..5ba66b5 100644 (file)
@@ -250,6 +250,14 @@ static inline bool qdisc_tx_changing(struct net_device *dev)
        return (txq->qdisc != txq->qdisc_sleeping);
 }
 
+/* Is the device using the noop qdisc?  */
+static inline bool qdisc_tx_is_noop(const struct net_device *dev)
+{
+       const struct netdev_queue *txq = &dev->tx_queue;
+
+       return (txq->qdisc == &noop_qdisc);
+}
+
 static inline int __qdisc_enqueue_tail(struct sk_buff *skb, struct Qdisc *sch,
                                       struct sk_buff_head *list)
 {
index 5c84c79..30184e0 100644 (file)
@@ -229,10 +229,9 @@ const struct in6_addr in6addr_linklocal_allnodes = IN6ADDR_LINKLOCAL_ALLNODES_IN
 const struct in6_addr in6addr_linklocal_allrouters = IN6ADDR_LINKLOCAL_ALLROUTERS_INIT;
 
 /* Check if a valid qdisc is available */
-static inline int addrconf_qdisc_ok(struct net_device *dev)
+static inline bool addrconf_qdisc_ok(const struct net_device *dev)
 {
-       struct netdev_queue *txq = &dev->tx_queue;
-       return (txq->qdisc != &noop_qdisc);
+       return !qdisc_tx_is_noop(dev);
 }
 
 /* Check if a route is valid prefix route */