On Mon, 2013-11-11 at 10:53 -0600, Felipe Contreras wrote: > > I see the same behaviour - but it's the supplicant's doing, it is indeed > > getting the event that the AP connection failed (timed out): > > > > wlan0: Event ASSOC_TIMED_OUT (15) received > > Not in my setup. Well, dunno then. Different kernel versions? This clearly happens for me. > >> > This isn't really true like I said above - the kernel can only drop the > >> > association, if userspace *insists* then it will try again and again. > >> > >> But it's not doing this: > >> > >> ieee80211_destroy_assoc_data(sdata, false); > >> cfg80211_assoc_timeout(sdata->dev, bss); > >> > >> Which is what causes the association to stop for me. > >> > >> So where exactly in the code is the association being "dropped"? > > > > This does get called in my setup. > > Yes, because your setup is receiving beacons. No ... I tested on hwsim, making it ask for dtim-before-assoc, and short-circuiting the beacon-TX routing. It can't have been seeing beacons. > Check the code: > > if ((ifmgd->assoc_data->need_beacon && !ifmgd->have_beacon) || > ieee80211_do_assoc(sdata)) { > struct cfg80211_bss *bss = ifmgd->assoc_data->bss; > > ieee80211_destroy_assoc_data(sdata, false); > cfg80211_assoc_timeout(sdata->dev, bss); > } > > If there's no beacon, cfg80211_assoc_timeout() is not called. Yes it is. "need_beacon && !have_beacon: means - I wanted the beacon but didn't get it at the timeout. > I'm sure if you don't call ieee80211_rx_mgmt_beacon() at all you will > see the same behavior I see. I'm sure I won't :) > > Like I said before - trying to work with an AP without beacons at all is > > really bad, we shouldn't be doing it. > > Why not? For all intents and purposes my system is not receiving any > beacons, and I don't see any problems. The not receiving part is a bug. I think you're probably receiving beacons once associated though? > What would you prefer? That nothing works at all? Yes, that'd be much safer. > > We might not properly react to > > radar events, and other things, for example. > > So? I don't know what that means, but it can't be worst than not being > able to connect to the Internet whatsoever at all. It can make you break the law. 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