On Wed, 2018-02-14 at 10:10 +0000, Jean Pierre TOSONI wrote:
> > However, it looks like you're right and ieee80211_bss_info_update()
> > doesn't take the flag into account. Bit strange that we even have
> > the flag I guess, since we treat 0 as an invalid value in various
> > places, being too high power to realistically receive anyway.
> The problem is that 0 is invalid as a SIGNAL_DBM value but this is
> dubious for a SIGNAL_UNSPEC value which appears to be still in use
> in a couple of drivers.
Huh, good point, that's ancient history to me and I forget :-)
> > Want to send a patch? There seem to be a few more places as well,
> I am working on a 3.18 kernel; so I can either make the patch from
> an old compat-wireless, or make the patch from your last tree but
> I cannot test it; are you interested anyways?
The only useful patch would be on the last tree. :-)
> > e.g.
> > in rx.c for cfg80211_report_obss_beacon() and cfg80211_rx_mgmt().
> There is also mlme.c, the ifmgd->ave_beacon_signal should not be updated
> with an invalid signal;
> and in the last tree, the ibss join passes an uninitialized signal
> value to cfg80211_inform_bss_frame_data().