fm10k: Correctly set the number of Tx queues
authorAlexander Duyck <alexander.h.duyck@intel.com>
Tue, 30 Sep 2014 22:49:22 +0000 (22:49 +0000)
committerJeff Kirsher <jeffrey.t.kirsher@intel.com>
Thu, 2 Oct 2014 06:42:55 +0000 (23:42 -0700)
The number of Tx queues was not being updated due to some issues when
generating the patches.  This change makes sure to add the lines necessary
to update the number of Tx queues correctly.

Signed-off-by: Alexander Duyck <alexander.h.duyck@intel.com>
Tested-by: Aaron Brown <aaron.f.brown@intel.com>
Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
drivers/net/ethernet/intel/fm10k/fm10k_netdev.c

index dcec000bdb689cf8be578248627f439103a21240..bf44a8fe711f5f4dde3071b231ecfedad35a7ffe 100644 (file)
@@ -546,6 +546,10 @@ int fm10k_open(struct net_device *netdev)
        fm10k_request_glort_range(interface);
 
        /* Notify the stack of the actual queue counts */
+       err = netif_set_real_num_tx_queues(netdev,
+                                          interface->num_tx_queues);
+       if (err)
+               goto err_set_queues;
 
        err = netif_set_real_num_rx_queues(netdev,
                                           interface->num_rx_queues);
@@ -601,7 +605,7 @@ int fm10k_close(struct net_device *netdev)
 static netdev_tx_t fm10k_xmit_frame(struct sk_buff *skb, struct net_device *dev)
 {
        struct fm10k_intfc *interface = netdev_priv(dev);
-       unsigned int r_idx = 0;
+       unsigned int r_idx = skb->queue_mapping;
        int err;
 
        if ((skb->protocol ==  htons(ETH_P_8021Q)) &&