|
@@ -887,6 +887,15 @@ ath_tx_get_tid_subframe(struct ath_softc *sc, struct ath_txq *txq,
|
|
|
|
|
|
tx_info = IEEE80211_SKB_CB(skb);
|
|
|
tx_info->flags &= ~IEEE80211_TX_CTL_CLEAR_PS_FILT;
|
|
|
+
|
|
|
+ /*
|
|
|
+ * No aggregation session is running, but there may be frames
|
|
|
+ * from a previous session or a failed attempt in the queue.
|
|
|
+ * Send them out as normal data frames
|
|
|
+ */
|
|
|
+ if (!tid->active)
|
|
|
+ tx_info->flags &= ~IEEE80211_TX_CTL_AMPDU;
|
|
|
+
|
|
|
if (!(tx_info->flags & IEEE80211_TX_CTL_AMPDU)) {
|
|
|
bf->bf_state.bf_type = 0;
|
|
|
return bf;
|