Re: iwm(4) broken on latest -current kernel
Kevin Bloom <[email protected]>
| Newsgroups | gmane.os.netbsd.current |
|---|---|
| Message-ID | <20251221154852.kpSqg%[email protected]> |
(Michael van Elst) <[email protected]> wrote: > [email protected] (Kevin Bloom) writes: > > >(Michael van Elst) <[email protected]> wrote: > > >> [email protected] (Kevin Bloom) writes: > >> >I have tried this with no avail. :( > >> >Everything is fine using 11.99.3 but moving to the 11.99.4 kernel > >> >is when it dies. It appears to temporarily connect to the network > >> >but that status never goes to active. > > >Here is my output: > >iwm0: mac xx:xx:xx:xx:xx:xx bss xx:xx:xx:xx:xx:xx > ... > > rssi 69 txseq 7162 rxseq 21632 > > > rssi 69 is good enough... > > > Does the following patch help ? > > Index: sys/dev/pci/if_iwm.c > =================================================================== > RCS file: /cvsroot/src/sys/dev/pci/if_iwm.c,v > retrieving revision 1.92 > diff -p -u -r1.92 if_iwm.c > --- sys/dev/pci/if_iwm.c 5 Dec 2025 20:53:51 -0000 1.92 > +++ sys/dev/pci/if_iwm.c 20 Dec 2025 09:28:00 -0000 > @@ -6575,10 +6575,11 @@ iwm_auth(struct iwm_softc *sc) > * Prevent the FW from wandering off channel during association > * by "protecting" the session with a time event. > */ > - if (in->in_ni.ni_intval) { > - duration = 11 * in->in_ni.ni_intval / 10; > - iwm_protect_session(sc, in, duration, 5 * duration); > - } > + if (in->in_ni.ni_intval) > + duration = in->in_ni.ni_intval * 5; > + else > + duration = IEEE80211_DUR_TU; > + iwm_protect_session(sc, in, duration, in->in_ni.ni_intval / 2); > > return 0; > > That patch seems to have fixed it! Thanks for you help! Do you think that will be commited to NetBSD 11?