On Sun, Apr 29, 2018 at 01:24:09PM +0200, Stefan Sperling wrote:
> This diff doesn't look right. You'll want to prevent the timeout_add_msec()
> call rather than timeout_del() since your goal is to avoid scheduling
> the timeout in the first place. See 'man timeout_add'.
Oh, of course. Thanks for the pointers! Brainfart at my end due to
lack of coffee.
Regards,
Jesper Wallin
Index: ieee80211_input.c
===================================================================
RCS file: /cvs/src/sys/net80211/ieee80211_input.c,v
retrieving revision 1.199
diff -u -p -r1.199 ieee80211_input.c
--- ieee80211_input.c 27 Apr 2018 17:03:09 -0000 1.199
+++ ieee80211_input.c 29 Apr 2018 11:44:07 -0000
@@ -273,7 +273,8 @@ ieee80211_input(struct ifnet *ifp, struc
if ((*ic->ic_node_checkrssi)(ic, ni))
timeout_del(&ic->ic_bgscan_timeout);
else if (!timeout_pending(&ic->ic_bgscan_timeout) &&
- (ic->ic_flags & IEEE80211_F_BGSCAN) == 0)
+ (ic->ic_flags & IEEE80211_F_BGSCAN) == 0 &&
+ (ic->ic_flags & IEEE80211_F_DESBSSID) == 0)
timeout_add_msec(&ic->ic_bgscan_timeout,
500 * (ic->ic_bgscan_fail + 1));
}