diff options
author | Gertjan van Wingerde <gwingerde@kpnplanet.nl> | 2008-05-10 07:43:33 -0400 |
---|---|---|
committer | John W. Linville <linville@tuxdriver.com> | 2008-05-21 21:47:32 -0400 |
commit | 61448f88078e813bbaaa58eb775d650c85e7d407 (patch) | |
tree | 1a64fc0de784a3288369f9e554e7e2ec122ebc65 /drivers/net/wireless/rt2x00/rt2x00.h | |
parent | 61486e0f68d1f8966c09b734566a187d42d65c54 (diff) |
rt2x00: Fix queue related oops in case of deselected mac80211 multi-queue feature.
With the integration of the mac80211 multiqueue patches it has become possible that the
mac80211 layer modifies the number of TX queues that is stored inside the ieee80211_hw
structure, especially when multi-queue is not selected.
The rt2x00 drivers are not well suited to handle that situation, as they allocate the
queue structures before mac80211 has modified the number of queues it is going to use,
and also expect the number of allocated queues to match the hardware implementation.
Hence, ensure that rt2x00 maintains by itself the number of queues that the hardware
supports, and, at the same time, making is not dependent on the preservation of contents
inside a mac80211 structure.
Signed-off-by: Gertjan van Wingerde <gwingerde@kpnplanet.nl>
Signed-off-by: Ivo van Doorn <IvDoorn@gmail.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>
Diffstat (limited to 'drivers/net/wireless/rt2x00/rt2x00.h')
-rw-r--r-- | drivers/net/wireless/rt2x00/rt2x00.h | 1 |
1 files changed, 1 insertions, 0 deletions
diff --git a/drivers/net/wireless/rt2x00/rt2x00.h b/drivers/net/wireless/rt2x00/rt2x00.h index 65614841f748..6f7b34fac16c 100644 --- a/drivers/net/wireless/rt2x00/rt2x00.h +++ b/drivers/net/wireless/rt2x00/rt2x00.h | |||
@@ -591,6 +591,7 @@ struct rt2x00_ops { | |||
591 | const unsigned int max_ap_intf; | 591 | const unsigned int max_ap_intf; |
592 | const unsigned int eeprom_size; | 592 | const unsigned int eeprom_size; |
593 | const unsigned int rf_size; | 593 | const unsigned int rf_size; |
594 | const unsigned int tx_queues; | ||
594 | const struct data_queue_desc *rx; | 595 | const struct data_queue_desc *rx; |
595 | const struct data_queue_desc *tx; | 596 | const struct data_queue_desc *tx; |
596 | const struct data_queue_desc *bcn; | 597 | const struct data_queue_desc *bcn; |