diff options
author | John W. Linville <linville@tuxdriver.com> | 2012-06-06 20:40:06 +0200 |
---|---|---|
committer | John W. Linville <linville@tuxdriver.com> | 2012-06-06 20:40:06 +0200 |
commit | 7c9c46c16d2d1d232f3296924162de293477f017 (patch) | |
tree | 4dba9e4da9ad99a73251b4b0563f910f727894fb /net/mac80211/agg-rx.c | |
parent | net/wireless: ipw2200: introduce ipw_read_eeprom function (diff) | |
parent | Merge branch 'master' of git://git.kernel.org/pub/scm/linux/kernel/git/blueto... (diff) | |
download | linux-7c9c46c16d2d1d232f3296924162de293477f017.tar.xz linux-7c9c46c16d2d1d232f3296924162de293477f017.zip |
Merge branch 'master' of git://git.kernel.org/pub/scm/linux/kernel/git/linville/wireless
Conflicts:
drivers/net/wireless/iwlwifi/iwl-drv.c
Diffstat (limited to 'net/mac80211/agg-rx.c')
-rw-r--r-- | net/mac80211/agg-rx.c | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/net/mac80211/agg-rx.c b/net/mac80211/agg-rx.c index a096b0dae37d..32ef11d69798 100644 --- a/net/mac80211/agg-rx.c +++ b/net/mac80211/agg-rx.c @@ -142,15 +142,20 @@ static void sta_rx_agg_session_timer_expired(unsigned long data) struct tid_ampdu_rx *tid_rx; unsigned long timeout; + rcu_read_lock(); tid_rx = rcu_dereference(sta->ampdu_mlme.tid_rx[*ptid]); - if (!tid_rx) + if (!tid_rx) { + rcu_read_unlock(); return; + } timeout = tid_rx->last_rx + TU_TO_JIFFIES(tid_rx->timeout); if (time_is_after_jiffies(timeout)) { mod_timer(&tid_rx->session_timer, timeout); + rcu_read_unlock(); return; } + rcu_read_unlock(); ht_vdbg("rx session timer expired on tid %d\n", (u16)*ptid); |