diff options
author | Bob Copeland <me@bobcopeland.com> | 2013-11-05 11:16:56 -0800 |
---|---|---|
committer | Johannes Berg <johannes.berg@intel.com> | 2013-11-25 20:50:07 +0100 |
commit | 272a9e2614bf3b93f47f95ef9507d4ceec6bec27 (patch) | |
tree | 569917ada9f32be24e0656b1f6462c8c71876182 | |
parent | 58506eba784a0944e4c92876b18aacbaad178be3 (diff) | |
download | op-kernel-dev-272a9e2614bf3b93f47f95ef9507d4ceec6bec27.zip op-kernel-dev-272a9e2614bf3b93f47f95ef9507d4ceec6bec27.tar.gz |
mac80211: mesh_plink: don't ignore holding timer
The ignore_plink_timer flag is set when doing mod_timer() if
the timer was not previously active. This is to avoid executing
the timeout if del_timer() was subsequently called. However,
del_timer() only happens if we are moving to ESTAB state or
get a close frame while in HOLDING.
We cannot leave HOLDING and re-enter ESTAB unless we receive a
close frame (in which case ignore_plink_timer is already set) or
if the timeout expires, so there actually isn't a case where
this is needed on mod_timer().
Signed-off-by: Bob Copeland <bob@cozybit.com>
Signed-off-by: Johannes Berg <johannes.berg@intel.com>
-rw-r--r-- | net/mac80211/mesh_plink.c | 3 |
1 files changed, 1 insertions, 2 deletions
diff --git a/net/mac80211/mesh_plink.c b/net/mac80211/mesh_plink.c index 8e23395..550ebc1 100644 --- a/net/mac80211/mesh_plink.c +++ b/net/mac80211/mesh_plink.c @@ -671,8 +671,7 @@ static void mesh_plink_close(struct ieee80211_sub_if_data *sdata, sta->reason = reason; sta->plink_state = NL80211_PLINK_HOLDING; - if (!mod_plink_timer(sta, mshcfg->dot11MeshHoldingTimeout)) - sta->ignore_plink_timer = true; + mod_plink_timer(sta, mshcfg->dot11MeshHoldingTimeout); } static u32 mesh_plink_establish(struct ieee80211_sub_if_data *sdata, |