CVSROOT: /cvs Module name: src Changes by: s...@cvs.openbsd.org 2018/02/25 05:40:06
Modified files: sys/dev/pci : if_iwn.c if_iwnvar.h Log message: My previous commit to iwn(4) broke the scan loop. The problem happened if we didn't find an AP to connect to after one scan iteration. The net80211 stack then performs a SCAN -> SCAN transition to kick off another scan, but the driver treated this transition as a no-op and remained in SCAN state doing nothing. To fix this, introduce a flag which keeps track of whether a firmware scan command is in progress, and start another scan during a SCAN->SCAN transition if no scan is in progress. Matches what iwm(4) does. Note that previously (i.e. in 6.2), iwn(4) would always try to start a new scan regardless of what the firmware was currently doing. Problem noticed by myself and also by deraadt@ test & ok tb@