On Tue, 28 May 2024 at 03:06, Bjoern A. Zeeb <b...@freebsd.org> wrote:

> On Mon, 27 May 2024, Adrian Chadd wrote:
>
> > On Mon, 27 May 2024 at 15:59, Bjoern A. Zeeb <b...@freebsd.org> wrote:
> >
> > Last I got fed up by SCAN problems this afternoon and started
> >> investigating.  Have other people (with iwn/iwm/iwlwifi or others)
> noticed
> >> the fact that once you are associated with a channel in a band (say
> Channel
> >> 6) you will not get scan results for 11a/5Ghz anymore?  Or that
> >> sometimes scanning will "just stop" (way beyond scanvalid interval) and
> >> triggering a manual scan (or from wpa_cli) you either just get the old
> >> cache
> >> or EINPROGRESS?  (checking ddb on-off I noticed that the scan got stuck
> >> in ACTIVE or BGSCAN was on suddenly despite IEEE80211_FEXT_SCAN_OFFLOAD
> >> is set given iwlwifi does hw_scan and we never enable background
> >> scanning).
> >> I know this has bugged me in the past a lot on iwm(4) on 8xxx chipsets
> >> and ifconfig down/ifconifg mode auto/ifconfig up fixed it again.
> >> In case more people have observed similar things, please let me know
> >> so we can properly track this.
> >>
> >
> > Oh, wow, this is still a problem? Aiee. I remember fixing a WHOLE lot of
> > races
> > in the non scan offload and the then-new scan full offload paths.
> >
> > I'll see if I can reproduce it on iwn(4) (which supports full scan
> offload)
>
> You should know better given you introduced this ..
>
> Reproducing on iwn(4) will be hard unless you change the driver...
> supports
> (in theory) and "supports" (is implemented and working) ....  just saying
> ...
>

oh iwm, not iwn. Yeah, iwn supports it too, but i never got to that. Anyway.


>
> % grep -r IEEE80211_FEXT_SCAN_OFFLOAD sys/dev/
> sys/dev/iwm/if_iwm.c:   ic->ic_flags_ext = IEEE80211_FEXT_SCAN_OFFLOAD;
> sys/dev/usb/wlan/if_rsu.c:      ic->ic_flags_ext |=
> IEEE80211_FEXT_SCAN_OFFLOAD;
>
> It's a hacked up solution and scrolling through I found at least two
> places where the logic seems wrong (and it's only what--8 checks in
> total?).  I think atomics are the least of my concerns here...
>

Oh yeah, the checks aren't all that great. A large part of the problem with
the scan
stuff is how it used to literally /sleep/ in the middle of doing it, rather
than defer
it into a state machine with callbacks.

I'm unsurprised there are still bugs. :(



-adrian

Reply via email to