On Fri, 2012-11-16 at 22:47 -0800, Marco Porsch wrote: (again, changelog entry) > - if (_chg_mesh_attr(NL80211_MESHCONF_POWER_MODE, mask)) > + if (_chg_mesh_attr(NL80211_MESHCONF_POWER_MODE, mask)) { > conf->power_mode = nconf->power_mode; > + ieee80211_local_ps_update(sdata); > + } Hmm, ok, so this _chg_mesh_attr call didn't belong into the previous patch, but only here. > +/* mesh power save */ > +void ieee80211_local_ps_update(struct ieee80211_sub_if_data *sdata); > +void ieee80211_set_local_ps_mode(struct sta_info *sta, > + enum nl80211_mesh_power_mode pm, u32 delay); Both function should have 'mesh' somewhere in the name, I think? > +++ b/net/mac80211/mesh_plink.c > @@ -24,6 +24,7 @@ > #define dot11MeshConfirmTimeout(s) (s->u.mesh.mshcfg.dot11MeshConfirmTimeout) > #define dot11MeshHoldingTimeout(s) (s->u.mesh.mshcfg.dot11MeshHoldingTimeout) > #define dot11MeshMaxPeerLinks(s) (s->u.mesh.mshcfg.dot11MeshMaxPeerLinks) > +#define default_ps_mode(s) (s->u.mesh.mshcfg.power_mode) I wish these macros were just removed, can't you define an "ifmsh" (or so, like elsewhere) variable and use "ifmsh->power_mode"? > + list_for_each_entry_rcu(sta, &sdata->local->sta_list, list) { Ummm, no. You have to at least check the sdata. > +static void ieee80211_local_ps_mode_timer(unsigned long data) "sta" somewhere in the name? > +/** > + * ieee80211_set_local_ps_mode - set local PS mode towards a mesh STA ditto > + if (delay) { > + /* > + * after peering/authentication/scanning it is useful to delay > + * the transition to a lower power mode to avoid frame losses > + * also intended for per-link dynamic powersave > + */ > + sta->local_ps_mode_delayed = pm; > + > + sta->local_ps_mode_timer.data = (unsigned long) sta; > + sta->local_ps_mode_timer.function = > + ieee80211_local_ps_mode_timer; > + mod_timer(&sta->local_ps_mode_timer, > + jiffies + msecs_to_jiffies(delay)); I think you should set this up earlier (sta init?) and just use mod_timer here. johannes -- To unsubscribe from this list: send the line "unsubscribe linux-wireless" in the body of a message to majordomo@xxxxxxxxxxxxxxx More majordomo info at http://vger.kernel.org/majordomo-info.html