diff options
author | Felix Fietkau <nbd@openwrt.org> | 2014-11-30 21:05:17 +0000 |
---|---|---|
committer | Felix Fietkau <nbd@openwrt.org> | 2014-11-30 21:05:17 +0000 |
commit | 62100c31d60d1af9831f9cb85bc00cd019f1170e (patch) | |
tree | 3f79fa3ee2257bf16a5f8bd580c6043be4bd0512 /package/kernel | |
parent | eb41cee9e8fe3097a0881df0183b3d26637040b7 (diff) | |
download | upstream-62100c31d60d1af9831f9cb85bc00cd019f1170e.tar.gz upstream-62100c31d60d1af9831f9cb85bc00cd019f1170e.tar.bz2 upstream-62100c31d60d1af9831f9cb85bc00cd019f1170e.zip |
ath5k: fix hardware queue index assignment
Signed-off-by: Felix Fietkau <nbd@openwrt.org>
SVN-Revision: 43442
Diffstat (limited to 'package/kernel')
-rw-r--r-- | package/kernel/mac80211/patches/326-ath5k-fix-hardware-queue-index-assignment.patch | 29 |
1 files changed, 29 insertions, 0 deletions
diff --git a/package/kernel/mac80211/patches/326-ath5k-fix-hardware-queue-index-assignment.patch b/package/kernel/mac80211/patches/326-ath5k-fix-hardware-queue-index-assignment.patch new file mode 100644 index 0000000000..81807a9be3 --- /dev/null +++ b/package/kernel/mac80211/patches/326-ath5k-fix-hardware-queue-index-assignment.patch @@ -0,0 +1,29 @@ +From: Felix Fietkau <nbd@openwrt.org> +Date: Sun, 30 Nov 2014 21:51:12 +0100 +Subject: [PATCH] ath5k: fix hardware queue index assignment + +Like with ath9k, ath5k queues also need to be ordered by priority. +queue_info->tqi_subtype already contains the correct index, so use it +instead of relying on the order of ath5k_hw_setup_tx_queue calls. + +Cc: stable@vger.kernel.org +Signed-off-by: Felix Fietkau <nbd@openwrt.org> +--- + +--- a/drivers/net/wireless/ath/ath5k/qcu.c ++++ b/drivers/net/wireless/ath/ath5k/qcu.c +@@ -225,13 +225,7 @@ ath5k_hw_setup_tx_queue(struct ath5k_hw + } else { + switch (queue_type) { + case AR5K_TX_QUEUE_DATA: +- for (queue = AR5K_TX_QUEUE_ID_DATA_MIN; +- ah->ah_txq[queue].tqi_type != +- AR5K_TX_QUEUE_INACTIVE; queue++) { +- +- if (queue > AR5K_TX_QUEUE_ID_DATA_MAX) +- return -EINVAL; +- } ++ queue = queue_info->tqi_subtype; + break; + case AR5K_TX_QUEUE_UAPSD: + queue = AR5K_TX_QUEUE_ID_UAPSD; |