ath9k_htc: Avoid setting QoS control for non-QoS frames

Setting tid information in the TX header is required only for QoS
frames. Not handling this case causes severe data loss with some APs.

Cc: stable@kernel.org
Signed-off-by: Rajkumar Manoharan <rmanoharan@atheros.com>
Signed-off-by: John W. Linville <linville@tuxdriver.com>

authored by Rajkumar Manoharan and committed by John W. Linville 3bf30b56 09a02fdb

+1 -1
+1 -1
drivers/net/wireless/ath/ath9k/htc_drv_txrx.c
··· 121 121 tx_hdr.data_type = ATH9K_HTC_NORMAL; 122 122 } 123 123 124 - if (ieee80211_is_data(fc)) { 124 + if (ieee80211_is_data_qos(fc)) { 125 125 qc = ieee80211_get_qos_ctl(hdr); 126 126 tx_hdr.tidno = qc[0] & IEEE80211_QOS_CTL_TID_MASK; 127 127 }