]> git.kernelconcepts.de Git - karo-tx-linux.git/blobdiff - drivers/net/ethernet/intel/igb/igb_ethtool.c
Merge remote-tracking branch 'input-current/for-linus'
[karo-tx-linux.git] / drivers / net / ethernet / intel / igb / igb_ethtool.c
index b7b9c670bb3c7e24db5ff9d8e3437af06c27d317..2529bc625de4532e78407500d4c43ba92714f06a 100644 (file)
@@ -842,10 +842,6 @@ static void igb_get_drvinfo(struct net_device *netdev,
                sizeof(drvinfo->fw_version));
        strlcpy(drvinfo->bus_info, pci_name(adapter->pdev),
                sizeof(drvinfo->bus_info));
-       drvinfo->n_stats = IGB_STATS_LEN;
-       drvinfo->testinfo_len = IGB_TEST_LEN;
-       drvinfo->regdump_len = igb_get_regs_len(netdev);
-       drvinfo->eedump_len = igb_get_eeprom_len(netdev);
 }
 
 static void igb_get_ringparam(struct net_device *netdev,
@@ -3008,6 +3004,7 @@ static int igb_set_channels(struct net_device *netdev,
 {
        struct igb_adapter *adapter = netdev_priv(netdev);
        unsigned int count = ch->combined_count;
+       unsigned int max_combined = 0;
 
        /* Verify they are not requesting separate vectors */
        if (!count || ch->rx_count || ch->tx_count)
@@ -3018,11 +3015,13 @@ static int igb_set_channels(struct net_device *netdev,
                return -EINVAL;
 
        /* Verify the number of channels doesn't exceed hw limits */
-       if (count > igb_max_channels(adapter))
+       max_combined = igb_max_channels(adapter);
+       if (count > max_combined)
                return -EINVAL;
 
        if (count != adapter->rss_queues) {
                adapter->rss_queues = count;
+               igb_set_flag_queue_pairs(adapter, max_combined);
 
                /* Hardware has to reinitialize queues and interrupts to
                 * match the new configuration.