From 12afbfc557e1fd1afd19c0aa7da732f318ff71a4 Mon Sep 17 00:00:00 2001
From: nbd <nbd@3c298f89-4303-0410-b956-a3cf2f4a3e73>
Date: Mon, 20 Sep 2010 17:32:18 +0000
Subject: [PATCH] ath9k: fix a warning during a failed aggregation start

git-svn-id: svn://svn.openwrt.org/openwrt/trunk@23100 3c298f89-4303-0410-b956-a3cf2f4a3e73
---
 package/mac80211/patches/521-ath9k_aggr_race_fix.patch | 7 +++++--
 1 file changed, 5 insertions(+), 2 deletions(-)

diff --git a/package/mac80211/patches/521-ath9k_aggr_race_fix.patch b/package/mac80211/patches/521-ath9k_aggr_race_fix.patch
index 0da1e6124..0dbbc13f9 100644
--- a/package/mac80211/patches/521-ath9k_aggr_race_fix.patch
+++ b/package/mac80211/patches/521-ath9k_aggr_race_fix.patch
@@ -41,12 +41,15 @@
  void ath9k_enable_ps(struct ath_softc *sc);
 --- a/drivers/net/wireless/ath/ath9k/main.c
 +++ b/drivers/net/wireless/ath/ath9k/main.c
-@@ -1968,7 +1968,7 @@ static int ath9k_ampdu_action(struct iee
+@@ -1968,8 +1968,9 @@ static int ath9k_ampdu_action(struct iee
  		break;
  	case IEEE80211_AMPDU_TX_START:
  		ath9k_ps_wakeup(sc);
 -		ath_tx_aggr_start(sc, sta, tid, ssn);
+-		ieee80211_start_tx_ba_cb_irqsafe(vif, sta->addr, tid);
 +		ret = ath_tx_aggr_start(sc, sta, tid, ssn);
- 		ieee80211_start_tx_ba_cb_irqsafe(vif, sta->addr, tid);
++		if (!ret)
++			ieee80211_start_tx_ba_cb_irqsafe(vif, sta->addr, tid);
  		ath9k_ps_restore(sc);
  		break;
+ 	case IEEE80211_AMPDU_TX_STOP:
-- 
2.20.1