ath9k: remove support for hardware which was never sold. reduces binary size by ~30k
[openwrt.git] / package / mac80211 / patches / 511-ath9k_completion_buffer_leak.patch
1 --- a/drivers/net/wireless/ath/ath9k/xmit.c
2 +++ b/drivers/net/wireless/ath/ath9k/xmit.c
3 @@ -329,6 +329,7 @@ static void ath_tx_complete_aggr(struct 
4         int isaggr, txfail, txpending, sendbar = 0, needreset = 0, nbad = 0;
5         bool rc_update = true;
6         struct ieee80211_tx_rate rates[4];
7 +       unsigned long flags;
8  
9         skb = bf->bf_mpdu;
10         hdr = (struct ieee80211_hdr *)skb->data;
11 @@ -344,6 +345,10 @@ static void ath_tx_complete_aggr(struct 
12         sta = ieee80211_find_sta_by_hw(hw, hdr->addr1);
13         if (!sta) {
14                 rcu_read_unlock();
15 +
16 +               spin_lock_irqsave(&sc->tx.txbuflock, flags);
17 +               list_splice_tail_init(bf_q, &sc->tx.txbuf);
18 +               spin_unlock_irqrestore(&sc->tx.txbuflock, flags);
19                 return;
20         }
21