Browse Source

ixgbe: Fix a set_num_queues() bug that can result in num_(r|t)x_queues = 0

Now that our set_num_queues() routines for each feature are re-entrant, and
can be called at any point, they shouldn't zero out the feature's indices
or mask bits.  Subsequent calls into those routines for those features can
result in zero Rx and Tx queues being assigned, causing a panic later in
driver reinitialization.

Signed-off-by: Peter P Waskiewicz Jr <peter.p.waskiewicz.jr@intel.com>
Signed-off-by: Jeff Kirsher <jeffrey.t.kirsher@intel.com>
Signed-off-by: David S. Miller <davem@davemloft.net>
Peter P Waskiewicz Jr 16 years ago
parent
commit
3e450669cc
1 changed files with 0 additions and 4 deletions
  1. 0 4
      drivers/net/ixgbe/ixgbe_main.c

+ 0 - 4
drivers/net/ixgbe/ixgbe_main.c

@@ -2350,8 +2350,6 @@ static inline bool ixgbe_set_dcb_queues(struct ixgbe_adapter *adapter)
 		                      adapter->ring_feature[RING_F_DCB].indices;
 		ret = true;
 	} else {
-		adapter->ring_feature[RING_F_DCB].mask = 0;
-		adapter->ring_feature[RING_F_DCB].indices = 0;
 		ret = false;
 	}
 
@@ -2371,8 +2369,6 @@ static inline bool ixgbe_set_rss_queues(struct ixgbe_adapter *adapter)
 		                      adapter->ring_feature[RING_F_RSS].indices;
 		ret = true;
 	} else {
-		adapter->ring_feature[RING_F_RSS].mask = 0;
-		adapter->ring_feature[RING_F_RSS].indices = 0;
 		ret = false;
 	}