|
@@ -2615,17 +2615,16 @@ EXPORT_SYMBOL(netif_device_attach);
|
|
|
* Returns a Tx hash based on the given packet descriptor a Tx queues' number
|
|
|
* to be used as a distribution range.
|
|
|
*/
|
|
|
-u16 __skb_tx_hash(const struct net_device *dev, struct sk_buff *skb,
|
|
|
- unsigned int num_tx_queues)
|
|
|
+static u16 skb_tx_hash(const struct net_device *dev, struct sk_buff *skb)
|
|
|
{
|
|
|
u32 hash;
|
|
|
u16 qoffset = 0;
|
|
|
- u16 qcount = num_tx_queues;
|
|
|
+ u16 qcount = dev->real_num_tx_queues;
|
|
|
|
|
|
if (skb_rx_queue_recorded(skb)) {
|
|
|
hash = skb_get_rx_queue(skb);
|
|
|
- while (unlikely(hash >= num_tx_queues))
|
|
|
- hash -= num_tx_queues;
|
|
|
+ while (unlikely(hash >= qcount))
|
|
|
+ hash -= qcount;
|
|
|
return hash;
|
|
|
}
|
|
|
|
|
@@ -2638,7 +2637,6 @@ u16 __skb_tx_hash(const struct net_device *dev, struct sk_buff *skb,
|
|
|
|
|
|
return (u16) reciprocal_scale(skb_get_hash(skb), qcount) + qoffset;
|
|
|
}
|
|
|
-EXPORT_SYMBOL(__skb_tx_hash);
|
|
|
|
|
|
static void skb_warn_bad_offload(const struct sk_buff *skb)
|
|
|
{
|