Return-path: Received: from mail.atheros.com ([12.19.149.2]:26547 "EHLO mail.atheros.com" rhost-flags-OK-OK-OK-OK) by vger.kernel.org with ESMTP id S1752734Ab0JDVDw (ORCPT ); Mon, 4 Oct 2010 17:03:52 -0400 Received: from mail.atheros.com ([10.10.20.108]) by sidewinder.atheros.com for ; Mon, 04 Oct 2010 14:03:44 -0700 Date: Mon, 4 Oct 2010 14:03:50 -0700 From: "Luis R. Rodriguez" To: Johannes Berg CC: Luis Rodriguez , "linville@tuxdriver.com" , "linux-wireless@vger.kernel.org" , "stable@kernel.org" , Jouni Malinen , Paul Stewart , Amod Bodas , Vasanth Thiagarajan Subject: Re: [PATCH v2 3/3] mac80211: move to the home channel for disassociation when roaming Message-ID: <20101004210350.GS2105@tux> References: <1285965233-11097-1-git-send-email-lrodriguez@atheros.com> <1285965233-11097-4-git-send-email-lrodriguez@atheros.com> <1286198152.3620.35.camel@jlt3.sipsolutions.net> <20101004163829.GD2105@tux> <1286210516.3620.41.camel@jlt3.sipsolutions.net> <20101004172333.GK2105@tux> <1286217569.3620.48.camel@jlt3.sipsolutions.net> MIME-Version: 1.0 Content-Type: text/plain; charset="us-ascii" In-Reply-To: <1286217569.3620.48.camel@jlt3.sipsolutions.net> Sender: linux-wireless-owner@vger.kernel.org List-ID: On Mon, Oct 04, 2010 at 11:39:29AM -0700, Johannes Berg wrote: > On Mon, 2010-10-04 at 10:23 -0700, Luis R. Rodriguez wrote: > > On Mon, Oct 04, 2010 at 09:41:56AM -0700, Johannes Berg wrote: > > > On Mon, 2010-10-04 at 09:38 -0700, Luis R. Rodriguez wrote: > > > > On Mon, Oct 04, 2010 at 06:15:52AM -0700, Johannes Berg wrote: > > > > > On Fri, 2010-10-01 at 16:33 -0400, Luis R. Rodriguez wrote: > > > > > > > > > > > @@ -2203,6 +2204,14 @@ int ieee80211_mgd_assoc(struct ieee80211_sub_if_data *sdata, > > > > > > return -EALREADY; > > > > > > } > > > > > > > > > > > > + /* > > > > > > + * right before this was authentication, that was on > > > > > > + * the same the wk->chan so we need to ensure we temporarily > > > > > > + * go back to the operating channel to send the disassocation. > > > > > > + */ > > > > > > + local->tmp_channel = NULL; > > > > > > + ieee80211_hw_config(local, 0); > > > > > > + > > > > > > > > > > Yikes, no, you can't do this. You don't know what has been merged with > > > > > the authentication work item, etc. > > > > > > > > What do you mean? Auth/Assoc will be handled separately and the > > > > target channel will also be handled for each work item run, what > > > > issues can arise from sending us back to the home channel towards > > > > the end of this call here? > > > > > > Another work item, like a remain-on-channel, might have been started on > > > the same channel ("merged"). > > > > But how do this break that other work from moving forward in its respective > > channel? The work_work loop makes sure to check if we require a channel > > change on the work item. > > But we already activated that other work item. Ah yes, I see that now, thanks.. Luis