On Fri, 2012-06-01 at 11:40 +0300, Eliad Peller wrote: > On Fri, Jun 1, 2012 at 11:21 AM, Johannes Berg > <johannes@xxxxxxxxxxxxxxxx> wrote: > > On Fri, 2012-06-01 at 11:14 +0300, Eliad Peller wrote: > >> ieee80211_set_disassoc() clears ifmgd->bssid before > >> building DELBA frames, resulting in frames with invalid > >> bssid ("00:00:00:00:00:00"). > >> > >> Fix it by clearing ifmgd->bssid only after building > >> all the needed frames. > >> > >> After this change, we no longer need to save the > >> bssid (before clearing it), so remove the local array. > > > > I'm not convinced clearing the BSSID this late is correct, there's a lot > > of code using it, for example comparing it on RX, that we may not want > > to have it at this point any more. > > > > It may well be that this is no longer a concern, but I wouldn't dismiss > > it right away. > > > i can't really spot any significant difference between these 2 locations. > i only deferred it latter in the same function (after stopping the > queues, setting carrier off, and sending DELBA + deauth). do you see > anything that might go wrong? I took another look, and I guess I don't see anything now either. Let's try this patch :-) One side effect from clearing the BSSID early was also that we sometimes (if there was pending traffic while disassociating) got the message "dropped from to unauthorized port 00:00:00:00:00:00" or so ... so that should go away too. 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