]> git.karo-electronics.de Git - karo-tx-linux.git/blobdiff - drivers/net/ethernet/intel/igb/igb_main.c
igb: Unpair the queues when changing the number of queues
[karo-tx-linux.git] / drivers / net / ethernet / intel / igb / igb_main.c
index 31e5f39428393818257853b44b0b4915f4817eac..85c47aa16a31f4c82b56200ac603c5df75e42ec1 100644 (file)
@@ -2921,14 +2921,6 @@ void igb_set_flag_queue_pairs(struct igb_adapter *adapter,
                /* Device supports enough interrupts without queue pairing. */
                break;
        case e1000_82576:
-               /* If VFs are going to be allocated with RSS queues then we
-                * should pair the queues in order to conserve interrupts due
-                * to limited supply.
-                */
-               if ((adapter->rss_queues > 1) &&
-                   (adapter->vfs_allocated_count > 6))
-                       adapter->flags |= IGB_FLAG_QUEUE_PAIRS;
-               /* fall through */
        case e1000_82580:
        case e1000_i350:
        case e1000_i354:
@@ -2939,6 +2931,8 @@ void igb_set_flag_queue_pairs(struct igb_adapter *adapter,
                 */
                if (adapter->rss_queues > (max_rss_queues / 2))
                        adapter->flags |= IGB_FLAG_QUEUE_PAIRS;
+               else
+                       adapter->flags &= ~IGB_FLAG_QUEUE_PAIRS;
                break;
        }
 }