diff options
author | David S. Miller <davem@davemloft.net> | 2016-06-30 05:03:36 -0400 |
---|---|---|
committer | David S. Miller <davem@davemloft.net> | 2016-06-30 05:03:36 -0400 |
commit | ee58b57100ca953da7320c285315a95db2f7053d (patch) | |
tree | 77b815a31240adc4d6326346908137fc6c2c3a96 /net/mac80211/mesh.c | |
parent | 6f30e8b022c8e3a722928ddb1a2ae0be852fcc0e (diff) | |
parent | e7bdea7750eb2a64aea4a08fa5c0a31719c8155d (diff) |
Merge git://git.kernel.org/pub/scm/linux/kernel/git/davem/net
Several cases of overlapping changes, except the packet scheduler
conflicts which deal with the addition of the free list parameter
to qdisc_enqueue().
Signed-off-by: David S. Miller <davem@davemloft.net>
Diffstat (limited to 'net/mac80211/mesh.c')
-rw-r--r-- | net/mac80211/mesh.c | 7 |
1 files changed, 5 insertions, 2 deletions
diff --git a/net/mac80211/mesh.c b/net/mac80211/mesh.c index 21b1fdf5d01d..6a1603bcdced 100644 --- a/net/mac80211/mesh.c +++ b/net/mac80211/mesh.c | |||
@@ -148,14 +148,17 @@ u32 mesh_accept_plinks_update(struct ieee80211_sub_if_data *sdata) | |||
148 | void mesh_sta_cleanup(struct sta_info *sta) | 148 | void mesh_sta_cleanup(struct sta_info *sta) |
149 | { | 149 | { |
150 | struct ieee80211_sub_if_data *sdata = sta->sdata; | 150 | struct ieee80211_sub_if_data *sdata = sta->sdata; |
151 | u32 changed; | 151 | u32 changed = 0; |
152 | 152 | ||
153 | /* | 153 | /* |
154 | * maybe userspace handles peer allocation and peering, but in either | 154 | * maybe userspace handles peer allocation and peering, but in either |
155 | * case the beacon is still generated by the kernel and we might need | 155 | * case the beacon is still generated by the kernel and we might need |
156 | * an update. | 156 | * an update. |
157 | */ | 157 | */ |
158 | changed = mesh_accept_plinks_update(sdata); | 158 | if (sdata->u.mesh.user_mpm && |
159 | sta->mesh->plink_state == NL80211_PLINK_ESTAB) | ||
160 | changed |= mesh_plink_dec_estab_count(sdata); | ||
161 | changed |= mesh_accept_plinks_update(sdata); | ||
159 | if (!sdata->u.mesh.user_mpm) { | 162 | if (!sdata->u.mesh.user_mpm) { |
160 | changed |= mesh_plink_deactivate(sta); | 163 | changed |= mesh_plink_deactivate(sta); |
161 | del_timer_sync(&sta->mesh->plink_timer); | 164 | del_timer_sync(&sta->mesh->plink_timer); |