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>
This commit is contained in:
Peter P Waskiewicz Jr 2009-02-07 02:16:59 -08:00 committed by David S. Miller
parent 2813ddd1bf
commit 3e450669cc

View File

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