Skip to content

Commit 8a71f34

Browse files
vanhoefmKalle Valo
authored andcommitted
ath9k_htc: adhere to the DONT_REORDER transmit flag
Assure that frames with the fixed order flag are not reordered relative to each other. This is accomplished by transmitting them using a fixed priority independent of their QoS field. Signed-off-by: Mathy Vanhoef <[email protected]> Signed-off-by: Kalle Valo <[email protected]> Link: https://lore.kernel.org/r/[email protected]
1 parent 743b906 commit 8a71f34

File tree

1 file changed

+6
-1
lines changed

1 file changed

+6
-1
lines changed

drivers/net/wireless/ath/ath9k/htc_drv_txrx.c

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -297,7 +297,12 @@ static void ath9k_htc_tx_data(struct ath9k_htc_priv *priv,
297297
tx_hdr.data_type = ATH9K_HTC_NORMAL;
298298
}
299299

300-
if (ieee80211_is_data_qos(hdr->frame_control)) {
300+
/* Transmit all frames that should not be reordered relative
301+
* to each other using the same priority. For other QoS data
302+
* frames extract the priority from the header.
303+
*/
304+
if (!(tx_info->control.flags & IEEE80211_TX_CTRL_DONT_REORDER) &&
305+
ieee80211_is_data_qos(hdr->frame_control)) {
301306
qc = ieee80211_get_qos_ctl(hdr);
302307
tx_hdr.tidno = qc[0] & IEEE80211_QOS_CTL_TID_MASK;
303308
}

0 commit comments

Comments
 (0)