net: Move functions for configuring traffic classes out of inline headers
authorAlexander Duyck <alexander.h.duyck@intel.com>
Fri, 28 Oct 2016 15:43:20 +0000 (11:43 -0400)
committerDavid S. Miller <davem@davemloft.net>
Mon, 31 Oct 2016 19:00:47 +0000 (15:00 -0400)
The functions for configuring the traffic class to queue mappings have
other effects that need to be addressed.  Instead of trying to export a
bunch of new functions just relocate the functions so that we can
instrument them directly with the functionality they will need.

Signed-off-by: Alexander Duyck <alexander.h.duyck@intel.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
include/linux/netdevice.h
net/core/dev.c

index 20ce8df115ac4ce92903ab0f8b5b51fb2e983d1e..e05ab3bd48d226a372d73525931456af6e0a1389 100644 (file)
@@ -1920,34 +1920,9 @@ int netdev_set_prio_tc_map(struct net_device *dev, u8 prio, u8 tc)
        return 0;
 }
 
-static inline
-void netdev_reset_tc(struct net_device *dev)
-{
-       dev->num_tc = 0;
-       memset(dev->tc_to_txq, 0, sizeof(dev->tc_to_txq));
-       memset(dev->prio_tc_map, 0, sizeof(dev->prio_tc_map));
-}
-
-static inline
-int netdev_set_tc_queue(struct net_device *dev, u8 tc, u16 count, u16 offset)
-{
-       if (tc >= dev->num_tc)
-               return -EINVAL;
-
-       dev->tc_to_txq[tc].count = count;
-       dev->tc_to_txq[tc].offset = offset;
-       return 0;
-}
-
-static inline
-int netdev_set_num_tc(struct net_device *dev, u8 num_tc)
-{
-       if (num_tc > TC_MAX_QUEUE)
-               return -EINVAL;
-
-       dev->num_tc = num_tc;
-       return 0;
-}
+void netdev_reset_tc(struct net_device *dev);
+int netdev_set_tc_queue(struct net_device *dev, u8 tc, u16 count, u16 offset);
+int netdev_set_num_tc(struct net_device *dev, u8 num_tc);
 
 static inline
 int netdev_get_num_tc(struct net_device *dev)
index 8341dadf5e946795604c6428b95af61e9a3a3ebf..2d54be912136fefe17fa9f42519734aca4929d60 100644 (file)
@@ -2173,6 +2173,35 @@ error:
 EXPORT_SYMBOL(netif_set_xps_queue);
 
 #endif
+void netdev_reset_tc(struct net_device *dev)
+{
+       dev->num_tc = 0;
+       memset(dev->tc_to_txq, 0, sizeof(dev->tc_to_txq));
+       memset(dev->prio_tc_map, 0, sizeof(dev->prio_tc_map));
+}
+EXPORT_SYMBOL(netdev_reset_tc);
+
+int netdev_set_tc_queue(struct net_device *dev, u8 tc, u16 count, u16 offset)
+{
+       if (tc >= dev->num_tc)
+               return -EINVAL;
+
+       dev->tc_to_txq[tc].count = count;
+       dev->tc_to_txq[tc].offset = offset;
+       return 0;
+}
+EXPORT_SYMBOL(netdev_set_tc_queue);
+
+int netdev_set_num_tc(struct net_device *dev, u8 num_tc)
+{
+       if (num_tc > TC_MAX_QUEUE)
+               return -EINVAL;
+
+       dev->num_tc = num_tc;
+       return 0;
+}
+EXPORT_SYMBOL(netdev_set_num_tc);
+
 /*
  * Routine to help set real_num_tx_queues. To avoid skbs mapped to queues
  * greater then real_num_tx_queues stale skbs on the qdisc must be flushed.