On Tue, 2014-03-04 at 16:50 +0200, Emmanuel Grumbach wrote: > On 2.4Ghz band, the channels overlap since the delta > between different channels is 5Mhz while the width of the > receiver is 20Mhz (at least). > > This means that we can hear beacons or probe responses from > adjacent channels. These frames will have a significant > lower RSSI which will feed all kinds of logic with inaccurate > data. An obvious example is the roaming algorithm that will > think our AP is getting weak and will try to move to another > AP. > > In order to avoid this, update the signal only if the frame > has been heard on the same channel as the one advertised by > the AP in its DS / HT IEs. > We refrain from updating the values only if the AP is > already in the BSS list so that we will still have a valid > (but inaccurate) value if the AP was heard on an adjacent > channel only. > > To achieve this, stop taking the channel from DS / HT IEs > in mac80211. The DS / HT IEs is taken into account to > discard the frame if it was received on a disabled channel. > This can happen due to the same phenomenon: the frame is > sent on channel 12, but heard on channel 11 while channel > 12 can be disabled on certain devices. Since this check > is done in cfg80211, stop even checking this in mac80211. Applied, I removed a dead variable (rx_freq) 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