mac80211: initialize power mode for mesh STAs
authorThomas Pedersen <thomas@cozybit.com>
Fri, 21 Jun 2013 06:50:59 +0000 (23:50 -0700)
committerJohannes Berg <johannes.berg@intel.com>
Mon, 24 Jun 2013 13:59:20 +0000 (15:59 +0200)
Previously the default mesh STA nonpeer power mode was
UNKNOWN (0) make the default mesh STA power mode ACTIVE,
to prevent unnecessary  frame buffering while peering is
not yet complete. Fixes a panic in ath9k_htc when adding
stations from userspace, and mcast buffered frames are
later released.

Thanks to Bob Copeland for his help debugging this.

Signed-off-by: Thomas Pedersen <thomas@cozybit.com>
Signed-off-by: Johannes Berg <johannes.berg@intel.com>
net/mac80211/sta_info.c

index aaf68d2..aeb967a 100644 (file)
@@ -347,6 +347,7 @@ struct sta_info *sta_info_alloc(struct ieee80211_sub_if_data *sdata,
        if (ieee80211_vif_is_mesh(&sdata->vif) &&
            !sdata->u.mesh.user_mpm)
                init_timer(&sta->plink_timer);
+       sta->nonpeer_pm = NL80211_MESH_POWER_ACTIVE;
 #endif
 
        memcpy(sta->sta.addr, addr, ETH_ALEN);