diff options
author | Felix Fietkau <nbd@openwrt.org> | 2009-09-09 00:17:13 +0000 |
---|---|---|
committer | Felix Fietkau <nbd@openwrt.org> | 2009-09-09 00:17:13 +0000 |
commit | d5cc8ea44bad409ce12fa4a3829a14c9944741d9 (patch) | |
tree | a91935ddec6bc3b28fab537404c00f99677aea60 /package/madwifi/patches/416-wprobe.patch | |
parent | 91d40a14affc8478720d8106d83a07265b1e0f36 (diff) | |
download | upstream-d5cc8ea44bad409ce12fa4a3829a14c9944741d9.tar.gz upstream-d5cc8ea44bad409ce12fa4a3829a14c9944741d9.tar.bz2 upstream-d5cc8ea44bad409ce12fa4a3829a14c9944741d9.zip |
madwifi: fix several noderef and ibss merge issues that led to memory leaks and high system load
SVN-Revision: 17545
Diffstat (limited to 'package/madwifi/patches/416-wprobe.patch')
-rw-r--r-- | package/madwifi/patches/416-wprobe.patch | 11 |
1 files changed, 5 insertions, 6 deletions
diff --git a/package/madwifi/patches/416-wprobe.patch b/package/madwifi/patches/416-wprobe.patch index 73cf85fae4..6c871f4257 100644 --- a/package/madwifi/patches/416-wprobe.patch +++ b/package/madwifi/patches/416-wprobe.patch @@ -477,10 +477,10 @@ type = ieee80211_input(ni->ni_vap, ni, skb, rs->rs_rssi, bf->bf_tsf); ieee80211_unref_node(&ni); } else { -@@ -7020,15 +7026,22 @@ drop_micfail: +@@ -7024,15 +7030,21 @@ lookup_slowpath: + else + vap = ieee80211_find_rxvap(ic, wh->i_addr1); - lookup_slowpath: - vap = ieee80211_find_rxvap(ic, wh->i_addr1); - if (vap) + if (vap) { + ath_wprobe_report_rx(vap, rs, skb); @@ -490,7 +490,6 @@ + TAILQ_FOREACH(vap, &ic->ic_vaps, iv_next) { + ath_wprobe_report_rx(vap, rs, skb); + } -+ vap = NULL; ni = NULL; + } @@ -502,7 +501,7 @@ type = ieee80211_input(vap, ni, skb, rs->rs_rssi, bf->bf_tsf); /* * If the station has a key cache slot assigned -@@ -8608,6 +8621,7 @@ ath_tx_processq(struct ath_softc *sc, st +@@ -8612,6 +8624,7 @@ ath_tx_processq(struct ath_softc *sc, st sc->sc_stats.ast_tx_rssi = ts->ts_rssi; ATH_RSSI_LPF(an->an_halstats.ns_avgtxrssi, ts->ts_rssi); @@ -510,7 +509,7 @@ if (bf->bf_skb->priority == WME_AC_VO || bf->bf_skb->priority == WME_AC_VI) ni->ni_ic->ic_wme.wme_hipri_traffic++; -@@ -10107,6 +10121,7 @@ ath_newassoc(struct ieee80211_node *ni, +@@ -10111,6 +10124,7 @@ ath_newassoc(struct ieee80211_node *ni, struct ath_softc *sc = ic->ic_dev->priv; sc->sc_rc->ops->newassoc(sc, ATH_NODE(ni), isnew); |