On Thu, 2013-12-05 at 17:07 +0200, Luciano Coelho wrote: > @@ -2982,21 +2982,19 @@ cfg80211_beacon_dup(struct cfg80211_beacon_data *beacon) > return new_beacon; > } > > -void ieee80211_csa_finalize_work(struct work_struct *work) > +void ieee80211_csa_finish(struct ieee80211_vif *vif) > { > - struct ieee80211_sub_if_data *sdata = > - container_of(work, struct ieee80211_sub_if_data, > - csa_finalize_work); > - struct ieee80211_local *local = sdata->local; > - int err, changed = 0; > + struct ieee80211_sub_if_data *sdata = vif_to_sdata(vif); > > - sdata_lock(sdata); > - /* AP might have been stopped while waiting for the lock. */ > - if (!sdata->vif.csa_active) > - goto unlock; > + ieee80211_queue_work(&sdata->local->hw, > + &sdata->csa_finalize_work); > +} > +EXPORT_SYMBOL(ieee80211_csa_finish); > > - if (!ieee80211_sdata_running(sdata)) > - goto unlock; > +static void ieee80211_csa_finalize(struct ieee80211_sub_if_data *sdata) > +{ > + struct ieee80211_local *local = sdata->local; > + int err, changed = 0; > > sdata->radar_required = sdata->csa_radar_required; > err = ieee80211_vif_change_channel(sdata, &changed); > @@ -3048,6 +3046,29 @@ unlock: > sdata_unlock(sdata); > } Hrmmmhh... This unlock should not be here anymore. I missed it when rebasing. v8 coming soon! -- Luca. -- 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