On Thu, Jul 26, 2012 at 8:47 PM, Johannes Berg <johannes@xxxxxxxxxxxxxxxx> wrote: > On Wed, 2012-07-25 at 18:49 +0300, Eliad Peller wrote: > >> @@ -2085,6 +2092,9 @@ static int ieee80211_set_power_mgmt(struct wiphy *wiphy, struct net_device *dev, >> >> ieee80211_recalc_ps(local, -1); >> >> + sdata->vif.bss_conf.ps = ieee80211_powersave_allowed(sdata); >> + ieee80211_bss_info_change_notify(sdata, BSS_CHANGED_PS); > > It need not have changed, since the AP could be broken? We might also > not even be associated, so I don't think this is right. > sure i'll fix it. i think i'll just refactor this code to ieee80211_recalc_ps_vif() that will do the recalc-and-notify-if-changed instead of duplicating it each time. > > I also wonder if ieee80211_recalc_ps() should use vif.bss_conf.ps > instead of calling powersave_allowed() itself? > i think we should better keep them decoupled. this way we can change the per-vif functionality without affecting the legacy per-device one. Eliad. -- 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