Created attachment 152282 [details] Patch (against HEAD) - Add power management support; - Add background scanning support; - Fix few LORs; - Handle rfkill switch state changes properly; - Fix recovering after firmware failure; - Add more error checking; - Cleanup & disable by default debug output; - Update macroses names; - Other various fixes; Tested with Intel 3945 (FreeBSD 10.1-RELEASE)
Created attachment 152662 [details] Patch (against HEAD) - Add IBSS support: - don't set data_ntries field for management frames; - Add AHDEMO support: - fix padding; - Sync eeprom functions; - Use CMD_RXON_ASSOC where possible; - Enable HW CCMP encryption/decryption for pairwise keys; - Fix filter flags for CMD_RXON.
A commit references this bug: Author: adrian Date: Sat Feb 7 23:09:04 UTC 2015 New revision: 278365 URL: https://svnweb.freebsd.org/changeset/base/278365 Log: Add WPI_DEBUG option. PR: kern/197143 Submitted by: Andriy Voskoboinyk <s3erios@gmail.com> Changes: head/sys/conf/options head/sys/modules/wpi/Makefile
A commit references this bug: Author: adrian Date: Sat Feb 7 23:11:39 UTC 2015 New revision: 278366 URL: https://svnweb.freebsd.org/changeset/base/278366 Log: Big wpi(4) overhaul! Not by me! This is a sync against iwn(4) and openbsd. - Add power management support; - Add background scanning support; - Fix few LORs; - Handle rfkill switch state changes properly; - Fix recovering after firmware failure; - Add more error checking; - Cleanup & disable by default debug output; - Update macroses names; - Other various fixes; - Add IBSS support: - don't set data_ntries field for management frames; - Add AHDEMO support: - fix padding; - Sync eeprom functions; - Use CMD_RXON_ASSOC where possible; - Enable HW CCMP encryption/decryption for pairwise keys; - Fix filter flags for CMD_RXON. Tested (by submitter) - iwn 3945 NIC. I have one somewhere; I'll validate this later on and revert it if it's a problem. Thanks! PR: 197143 Submitted by: Andriy Voskoboinyk <s3erios@gmail.com> Changes: head/sys/dev/wpi/if_wpi.c head/sys/dev/wpi/if_wpi_debug.h head/sys/dev/wpi/if_wpireg.h head/sys/dev/wpi/if_wpivar.h
It's in -HEAD now! Would you mind testing against that? The bgscan support should be even more fun once I get the net80211 bgscan support updates done. Are you interested in testing those out once I get them ready and iwn updated? Thanks!
(In reply to Adrian Chadd from comment #4) > It's in -HEAD now! Would you mind testing against that? I've tested it - mostly all works fine. However, there are some common problems/questions: 1) Bug 197498. 2) IEEE80211_CHAN_NOADHOC attribute seems to be ignored in AHDEMO mode - is it ok? 3) EFBIG errors in wpi_cmd2 (not sure if that can be fixed). + there is a small chance of kernel panic in wpi_intr() > The bgscan support should be even more fun once I get the net80211 bgscan support updates done. Are you interested in testing those out once I get them ready and iwn updated? Yes, I will test it.
Created attachment 152977 [details] Bugfixes - Use IEEE80211_F_DATAPAD; - (c->ic_flags & IEEE80211_CHAN_PASSIVE) -> IEEE80211_IS_CHAN_PASSIVE(c); - Convert ackfailcnt to int (there is dereference to *(int *) in ieee80211_ratectl_tx_complete()); - Fix & move cleanup to the end in wpi_rx_done(); - Add missed lock in wpi_update_beacon(); - Try to fix powersave. > there is a small chance of kernel panic in wpi_intr() I haven't seen this anymore.
Cool, committed to HEAD! Please check! Thankyou!
A commit references this bug: Author: adrian Date: Sat Feb 14 17:45:54 UTC 2015 New revision: 278764 URL: https://svnweb.freebsd.org/changeset/base/278764 Log: More fixes to wpi(4), again not by me! Woo! - Use IEEE80211_F_DATAPAD; - (c->ic_flags & IEEE80211_CHAN_PASSIVE) -> IEEE80211_IS_CHAN_PASSIVE(c); - Convert ackfailcnt to int (there is dereference to *(int *) in ieee80211_ratectl_tx_complete()); - Fix & move cleanup to the end in wpi_rx_done(); - Add missed lock in wpi_update_beacon(); - Try to fix powersave. PR: kern/197143 Submitted by: Andriy Voskoboinyk <s3erios@gmail.com> Changes: head/sys/dev/wpi/if_wpi.c head/sys/dev/wpi/if_wpireg.h
Created attachment 153911 [details] Bugfixes2.diff - Revert changes related to IEEE80211_F_DATAPAD (there is no padding in RX path). - Copy correct addresses to node.macaddr / rxon.myaddr. - Handle beaconing properly. - Enable HOSTAP mode (experimental). - Use HW AES-CCMP for all keys. - (partially) Replace global mutex with per-structure locks. - Remove races in wpi*intr functions. - Acquire ifq lock while checking / modifying IFF_DRV_OACTIVE flag. - Add WPI_DEBUG_NODE / WPI_DEBUG_REGISTER debug categories. - Use internal functions for node table management. - Move association from wpi_tx_data() to wpi_newassoc(). - Other minor fixes.
Have you tested this on -HEAD with witness debugging? Changing the locks may cause more LORs and I don't want to break locking. :(
Created attachment 153977 [details] Bugfixes2.diff - Fix locking problems. - Fix mbuf mapping errors in wpi_cmd2(). - Add note about DIAGNOSTIC option.
(In reply to Adrian Chadd from comment #10) Yes, I have tested this version with WITNESS enabled and there were no messages about lock order reversals in the driver. Also, locking order is described in if_wpivar.h.
Ok, cool. Would you mind breaking it out into smaller pieces? it's a big commit. Maybe start with RX path padding and correct addresses with RXON. That way I can incrementally commit things so if people have issues, it's possible to bisect which change caused it. Thanks!
Created attachment 153983 [details] Copy correct addresses to node.macaddr / rxon.myaddr
Created attachment 153985 [details] Revert changes related to IEEE80211_F_DATAPAD (there is no padding in RX path).
A commit references this bug: Author: adrian Date: Sun Mar 8 01:44:58 UTC 2015 New revision: 279762 URL: https://svnweb.freebsd.org/changeset/base/279762 Log: Use the correct mac addresses when initialising things. PR: kern/197143 Submitted by: Andriy Voskoboinyk <s3rios@gmail.com> Changes: head/sys/dev/wpi/if_wpi.c
A commit references this bug: Author: adrian Date: Sun Mar 8 01:47:10 UTC 2015 New revision: 279763 URL: https://svnweb.freebsd.org/changeset/base/279763 Log: Undo some issues from the previous big patch - there's no padding on RX, so remove DATAPAD and re-do the padding in the TX path manually. PR: kern/197143 Submitted by: Andriy Voskoboinyk <s3erios@gmail.com> Changes: head/sys/dev/wpi/if_wpi.c
Ok! Those two are committed. What's next to break out and commit?
Created attachment 153999 [details] Fix mbuf mapping errors in wpi_cmd2() + add check for nsegs
Created attachment 154000 [details] Fix a typo (IEEE80211_S_SCAN -> IEEE80211_F_SCAN)
Created attachment 154002 [details] Add missed ieee80211_draintask
Created attachment 154006 [details] Run callout_reset() with mutex held.
Created attachment 154007 [details] Divide ackfailcnt by 2 (firmware decreases rate after two unsuccessful retries)
Created attachment 154009 [details] Fix races between wpi_rx_done() and wpi_stop()
Created attachment 154010 [details] Fix panics in wpi_tx_done() when powersave is enabled
Created attachment 154011 [details] Use correct pointer for wpi_softc
Created attachment 154013 [details] Check some variables only on active TX rings
Created attachment 154015 [details] (Non-functional) Fix indentation.
Created attachment 154016 [details] Fix error handling in wpi_scan()
Created attachment 154017 [details] Fix warning: Value stored to 'supportsa' is never read
Created attachment 154019 [details] Replace msleep() by mtx_sleep()
Created attachment 154020 [details] (Non-functional) Wrap cast to (struct wpi_node *) into WPI_NODE macros
Created attachment 154021 [details] (Non-functional) Replace few numbers with named constants
Created attachment 154022 [details] wpi_intr(): remove duplicate code
Created attachment 154024 [details] (Non-functional) Break lines around 80 characters
Created attachment 154026 [details] (Non-functional) Remove some unneeded variables
Created attachment 154030 [details] (Non-functional) wpi_tx_data: move key processing
Created attachment 154032 [details] Replace kernel unit number allocator with local set of functions
Created attachment 154033 [details] Wrap node addition in STA mode into wpi_add_sta_node()
Created attachment 154328 [details] Add separate lock for TX queues
Created attachment 154329 [details] Eliminate 'busy' flag
Created attachment 154330 [details] Remove unnecessary locking
Created attachment 154332 [details] Move some code under mutex
Created attachment 154334 [details] Use ring->queued for WPI_CMD_TX_DATA only
Created attachment 154335 [details] Optimize sc->rev processing
Created attachment 154336 [details] Add node table lock (fixes possible LOR in wpi_node_free())
Created attachment 154337 [details] wpi_tx_done() shouldn't wait for wpi_start()
Created attachment 154338 [details] Move IBSS association processing to wpi_newassoc()
Created attachment 154340 [details] Fix debug category in wpi_read_eeprom_band()
Created attachment 154341 [details] Use WPI_RSSI_OFFSET instead of stat->noise (always 0 for me)
Created attachment 154343 [details] Allocate 'data' field in wpi_buf structure as static array
Created attachment 154346 [details] Move beacon command initialization to wpi_init_beacon()
Created attachment 154347 [details] Use ieee80211_beacon_update() for dynamic beacon contents
Created attachment 154348 [details] (Non-functional) Add prefixes to field names
Created attachment 154349 [details] Use separate mutex for wv_bcbuf / wv_boff structures
Created attachment 154350 [details] Encrypt frame if IEEE80211_BPF_CRYPTO flag is set
Created attachment 154351 [details] Add support for AES-CCMP group keys
Created attachment 154352 [details] Remove useless message
Created attachment 154353 [details] Remove unnecessary assignment
Created attachment 154354 [details] Remove unrelated comment
Created attachment 154355 [details] Add new debug category: WPI_DEBUG_REGISTER (0x00080000)
Created attachment 154356 [details] Add new debug category: WPI_DEBUG_NODE
Created attachment 154357 [details] Refactor wpi_ioctl()
Created attachment 154358 [details] Merge wpi_init() and wpi_init_locked()
Created attachment 154359 [details] Acquire ifq lock while checking / modifying IFF_DRV_OACTIVE flag
Created attachment 154360 [details] Do some cleanup before device startup
Created attachment 154361 [details] Disable powersave in IBSS mode (packet loss > 90%)
Created attachment 154362 [details] Add few KASSERTs
Created attachment 154363 [details] Fix some printfs
Created attachment 154364 [details] Rearrange checks in wpi_send_rxon()
Created attachment 154365 [details] Minor optimization in wpi_limit_dwell()
Created attachment 154366 [details] Merge wpi_start() and wpi_start_locked()
Created attachment 154368 [details] Add (experimental) HOSTAP mode support
Created attachment 154369 [details] Split TX and scan timers
Created attachment 154370 [details] Use WPI_FILTER_BSS for checking current state
Created attachment 154371 [details] Add mutex for rxon structure
Created attachment 154372 [details] Turn sc_tx_timer into callout parameter
Created attachment 154373 [details] Don't use sc->qfullmsk in wpi_start()
Created attachment 154374 [details] Regroup ring state checks in wpi_tx_done()
Created attachment 154375 [details] Add extra mutex for qfullmsk / ring->queued variables
Created attachment 154378 [details] Use another lock for TX path
Created attachment 154379 [details] Use correct types
Created attachment 154380 [details] Sync with previous version
Created attachment 154381 [details] Do not unlock mutex in interrupt thread (except wpi_rx_done()) - fixes various races between wpi_notif_intr() and wpi_stop_locked()
Created attachment 154382 [details] Fix scan timeouts with powersave enabled
Created attachment 154383 [details] Workaround delays caused by vmem_check()
Created attachment 154384 [details] Use separate taskqueue for device restart
A commit references this bug: Author: adrian Date: Sun Mar 15 20:09:48 UTC 2015 New revision: 280050 URL: https://svnweb.freebsd.org/changeset/base/280050 Log: Fix mbuf mapping errors in wpi_cmd2() + add check for nsegs PR: kern/197143 Submitted by: Andriy Voskoboinyk <s3erios@gmail.com> Changes: head/sys/dev/wpi/if_wpi.c
A commit references this bug: Author: adrian Date: Sun Mar 15 20:10:55 UTC 2015 New revision: 280051 URL: https://svnweb.freebsd.org/changeset/base/280051 Log: Fix a typo (IEEE80211_S_SCAN -> IEEE80211_F_SCAN) PR: kern/197143 Submitted by: Andriy Voskoboinyk <s3erios@gmail.com> Changes: head/sys/dev/wpi/if_wpi.c
A commit references this bug: Author: adrian Date: Sun Mar 15 20:12:17 UTC 2015 New revision: 280052 URL: https://svnweb.freebsd.org/changeset/base/280052 Log: Add missed ieee80211_draintask() PR: kern/197143 Submitted by: Andriy Voskoboinyk <s3erios@gmail.com> Changes: head/sys/dev/wpi/if_wpi.c
A commit references this bug: Author: adrian Date: Sun Mar 15 20:13:07 UTC 2015 New revision: 280053 URL: https://svnweb.freebsd.org/changeset/base/280053 Log: Run callout_reset() with mutex held. PR: kern/197143 Submitted by: Andriy Voskoboinyk <s3erios@gmail.com> Changes: head/sys/dev/wpi/if_wpi.c
A commit references this bug: Author: adrian Date: Sun Mar 15 20:13:59 UTC 2015 New revision: 280054 URL: https://svnweb.freebsd.org/changeset/base/280054 Log: Divide ackfailcnt by 2 (firmware decreases rate after two unsuccessful retries) PR: kern/197143 Submitted by: Andriy Voskoboinyk <s3erios@gmail.com> Changes: head/sys/dev/wpi/if_wpi.c
A commit references this bug: Author: adrian Date: Sun Mar 15 20:15:11 UTC 2015 New revision: 280055 URL: https://svnweb.freebsd.org/changeset/base/280055 Log: Fix races between wpi_rx_done() and wpi_stop() PR: kern/197143 Submitted by: Andriy Voskoboinyk <s3erios@gmail.com> Changes: head/sys/dev/wpi/if_wpi.c
A commit references this bug: Author: adrian Date: Sun Mar 15 20:17:25 UTC 2015 New revision: 280056 URL: https://svnweb.freebsd.org/changeset/base/280056 Log: Fix panics in wpi_tx_done() when powersave is enabled PR: kern/197143 Submitted by: Andriy Voskoboinyk <s3erios@gmail.com> Changes: head/sys/dev/wpi/if_wpi.c
A commit references this bug: Author: adrian Date: Sun Mar 15 20:18:10 UTC 2015 New revision: 280057 URL: https://svnweb.freebsd.org/changeset/base/280057 Log: Use correct pointer for wpi_softc PR: kern/197143 Submitted by: Andriy Voskoboinyk <s3erios@gmail.com> Changes: head/sys/dev/wpi/if_wpi.c
A commit references this bug: Author: adrian Date: Sun Mar 15 20:19:02 UTC 2015 New revision: 280058 URL: https://svnweb.freebsd.org/changeset/base/280058 Log: Check some variables only on active TX rings PR: kern/197143 Submitted by: Andriy Voskoboinyk <s3erios@gmail.com> Changes: head/sys/dev/wpi/if_wpi.c head/sys/dev/wpi/if_wpireg.h
A commit references this bug: Author: adrian Date: Sun Mar 15 20:19:56 UTC 2015 New revision: 280059 URL: https://svnweb.freebsd.org/changeset/base/280059 Log: Fix indentation - non-functional change. PR: kern/197143 Submitted by: Andriy Voskoboinyk <s3erios@gmail.com> Changes: head/sys/dev/wpi/if_wpi.c head/sys/dev/wpi/if_wpireg.h head/sys/dev/wpi/if_wpivar.h
A commit references this bug: Author: adrian Date: Sun Mar 15 20:20:44 UTC 2015 New revision: 280060 URL: https://svnweb.freebsd.org/changeset/base/280060 Log: Fix error handling in wpi_scan(). PR: kern/197143 Submitted by: Andriy Voskoboinyk <s3erios@gmail.com> Changes: head/sys/dev/wpi/if_wpi.c
A commit references this bug: Author: adrian Date: Sun Mar 15 20:21:31 UTC 2015 New revision: 280061 URL: https://svnweb.freebsd.org/changeset/base/280061 Log: Fix warning: Value stored to 'supportsa' is never read. PR: kern/197143 Submitted by: Andriy Voskoboinyk <s3erios@gmail.com> Changes: head/sys/dev/wpi/if_wpi.c
A commit references this bug: Author: adrian Date: Sun Mar 15 20:22:17 UTC 2015 New revision: 280062 URL: https://svnweb.freebsd.org/changeset/base/280062 Log: msleep() -> mtx_sleep() PR: kern/197143 Submitted by: Andriy Voskoboinyk <s3erios@gmail.com> Changes: head/sys/dev/wpi/if_wpi.c
A commit references this bug: Author: adrian Date: Sun Mar 15 20:23:59 UTC 2015 New revision: 280063 URL: https://svnweb.freebsd.org/changeset/base/280063 Log: Wrap cast to (struct wpi_node *) into WPI_NODE macros PR: kern/197143 Submitted by: Andriy Voskoboinyk <s3erios@gmail.com> Changes: head/sys/dev/wpi/if_wpi.c head/sys/dev/wpi/if_wpivar.h
A commit references this bug: Author: adrian Date: Sun Mar 15 20:29:23 UTC 2015 New revision: 280064 URL: https://svnweb.freebsd.org/changeset/base/280064 Log: Replace few numbers with named constants. PR: kern/197143 Submitted by: Andriy Voskoboinyk <s3erios@gmail.com> Changes: head/sys/dev/wpi/if_wpi.c head/sys/dev/wpi/if_wpireg.h
A commit references this bug: Author: adrian Date: Sun Mar 15 20:30:04 UTC 2015 New revision: 280065 URL: https://svnweb.freebsd.org/changeset/base/280065 Log: wpi_intr(): remove duplicate code PR: kern/197143 Submitted by: Andriy Voskoboinyk <s3erios@gmail.com> Changes: head/sys/dev/wpi/if_wpi.c
A commit references this bug: Author: adrian Date: Sun Mar 15 20:31:22 UTC 2015 New revision: 280066 URL: https://svnweb.freebsd.org/changeset/base/280066 Log: Reformatting - break lines ~ 80 characters. PR: kern/197143 Submitted by: Andriy Voskoboinyk <s3erios@gmail.com> Changes: head/sys/dev/wpi/if_wpi.c
A commit references this bug: Author: adrian Date: Sun Mar 15 20:32:13 UTC 2015 New revision: 280067 URL: https://svnweb.freebsd.org/changeset/base/280067 Log: Remove some un-needed variables. PR: kern/197143 Submitted by: Andriy Voskoboinyk <s3erios@gmail.com> Changes: head/sys/dev/wpi/if_wpi.c
A commit references this bug: Author: adrian Date: Sun Mar 15 20:33:14 UTC 2015 New revision: 280068 URL: https://svnweb.freebsd.org/changeset/base/280068 Log: Move key processing in wpi_tx_data. (This is in preparation for further work to support hardware encryption.) PR: kern/197143 Submitted by: Andriy Voskoboinyk <s3erios@gmail.com> Changes: head/sys/dev/wpi/if_wpi.c
A commit references this bug: Author: adrian Date: Sun Mar 15 20:34:27 UTC 2015 New revision: 280069 URL: https://svnweb.freebsd.org/changeset/base/280069 Log: Replace kernel unit allocator with local set of functions. PR: kern/197143 Submitted by: Andriy Voskoboinyk <s3erios@gmail.com> Changes: head/sys/dev/wpi/if_wpi.c head/sys/dev/wpi/if_wpivar.h
A commit references this bug: Author: adrian Date: Sun Mar 15 20:35:26 UTC 2015 New revision: 280070 URL: https://svnweb.freebsd.org/changeset/base/280070 Log: Wrap node addition in STA mode into wpi_add_sta_node(). PR: kern/197143 Submitted by: Andriy Voskoboinyk <s3erios@gmail.com> Changes: head/sys/dev/wpi/if_wpi.c
A commit references this bug: Author: adrian Date: Sun Mar 15 20:40:12 UTC 2015 New revision: 280071 URL: https://svnweb.freebsd.org/changeset/base/280071 Log: Add separate lock for TX queues. PR: kern/197143 Submitted by: Andriy Voskoboinyk <s3erios@gmail.com> Changes: head/sys/dev/wpi/if_wpi.c head/sys/dev/wpi/if_wpivar.h
A commit references this bug: Author: adrian Date: Sun Mar 15 20:41:00 UTC 2015 New revision: 280072 URL: https://svnweb.freebsd.org/changeset/base/280072 Log: Eliminate the WPI_FLAG_BUSY flag. PR: kern/197143 Submitted by: Andriy Voskoboinyk <s3erios@gmail.com> Changes: head/sys/dev/wpi/if_wpi.c head/sys/dev/wpi/if_wpivar.h
A commit references this bug: Author: adrian Date: Sun Mar 15 20:41:58 UTC 2015 New revision: 280073 URL: https://svnweb.freebsd.org/changeset/base/280073 Log: Remove unnecessary locking. PR: kern/197143 Submitted by: Andriy Voskoboinyk <s3erios@gmail.com> Changes: head/sys/dev/wpi/if_wpi.c
A commit references this bug: Author: adrian Date: Sun Mar 15 20:42:42 UTC 2015 New revision: 280074 URL: https://svnweb.freebsd.org/changeset/base/280074 Log: Move some code under WPI_LOCK(). PR: kern/197143 Submitted by: Andriy Voskoboinyk <s3erios@gmail.com> Changes: head/sys/dev/wpi/if_wpi.c
A commit references this bug: Author: adrian Date: Sun Mar 15 20:43:23 UTC 2015 New revision: 280075 URL: https://svnweb.freebsd.org/changeset/base/280075 Log: Use ring->queued for WPI_CMD_TX_DATA only. PR: kern/197143 Submitted by: Andriy Voskoboinyk <s3erios@gmail.com> Changes: head/sys/dev/wpi/if_wpi.c
A commit references this bug: Author: adrian Date: Sun Mar 15 20:43:59 UTC 2015 New revision: 280076 URL: https://svnweb.freebsd.org/changeset/base/280076 Log: Optimise sc->rev processing. PR: kern/197143 Submitted by: Andriy Voskoboinyk <s3erios@gmail.com> Changes: head/sys/dev/wpi/if_wpi.c
A commit references this bug: Author: adrian Date: Sun Mar 15 20:44:54 UTC 2015 New revision: 280077 URL: https://svnweb.freebsd.org/changeset/base/280077 Log: Add node table lock - addresses LOR in wpi_node_free(). PR: kern/197143 Submitted by: Andriy Voskoboinyk <s3erios@gmail.com> Changes: head/sys/dev/wpi/if_wpi.c head/sys/dev/wpi/if_wpivar.h
A commit references this bug: Author: adrian Date: Sun Mar 15 20:45:44 UTC 2015 New revision: 280078 URL: https://svnweb.freebsd.org/changeset/base/280078 Log: wpi_tx_done() shouldn't wait for wpi_start(). PR: kern/197143 Submitted by: Andriy Voskoboinyk <s3erios@gmail.com> Changes: head/sys/dev/wpi/if_wpi.c head/sys/dev/wpi/if_wpivar.h
A commit references this bug: Author: adrian Date: Sun Mar 15 20:46:25 UTC 2015 New revision: 280079 URL: https://svnweb.freebsd.org/changeset/base/280079 Log: Move IBSS assocation processing to wpi_newassoc(). PR: kern/197143 Submitted by: Andriy Voskoboinyk <s3erios@gmail.com> Changes: head/sys/dev/wpi/if_wpi.c
A commit references this bug: Author: adrian Date: Sun Mar 15 20:48:01 UTC 2015 New revision: 280080 URL: https://svnweb.freebsd.org/changeset/base/280080 Log: Fix debug category in wpi_read_eeprom_band() PR: kern/197143 Submitted by: Andriy Voskoboinyk <s3erios@gmail.com> Changes: head/sys/dev/wpi/if_wpi.c
A commit references this bug: Author: adrian Date: Sun Mar 15 20:48:33 UTC 2015 New revision: 280081 URL: https://svnweb.freebsd.org/changeset/base/280081 Log: Use WPI_RSSI_OFFSET instead of stat->noise (always 0 for me) PR: kern/197143 Submitted by: Andriy Voskoboinyk <s3erios@gmail.com> Changes: head/sys/dev/wpi/if_wpi.c
A commit references this bug: Author: adrian Date: Sun Mar 15 20:50:25 UTC 2015 New revision: 280082 URL: https://svnweb.freebsd.org/changeset/base/280082 Log: Use a static buffer in wpi_cmd - rather than alloc/free'ing the beacon buffer frequently. PR: kern/197143 Submitted by: Andriy Voskoboinyk <s3erios@gmail.com> Changes: head/sys/dev/wpi/if_wpi.c head/sys/dev/wpi/if_wpivar.h
A commit references this bug: Author: adrian Date: Sun Mar 15 20:51:07 UTC 2015 New revision: 280083 URL: https://svnweb.freebsd.org/changeset/base/280083 Log: Move beacon initialisation to wpi_init_beacon() PR: kern/197143 Submitted by: Andriy Voskoboinyk <s3erios@gmail.com> Changes: head/sys/dev/wpi/if_wpi.c
A commit references this bug: Author: adrian Date: Sun Mar 15 20:51:57 UTC 2015 New revision: 280084 URL: https://svnweb.freebsd.org/changeset/base/280084 Log: Use ieee80211_beacon_update() for dynamic beacon contents. PR: kern/197143 Submitted by: Andriy Voskoboinyk <s3erios@gmail.com> Changes: head/sys/dev/wpi/if_wpi.c head/sys/dev/wpi/if_wpivar.h
A commit references this bug: Author: adrian Date: Sun Mar 15 20:52:48 UTC 2015 New revision: 280085 URL: https://svnweb.freebsd.org/changeset/base/280085 Log: Add prefixes to field names. PR: kern/197143 Submitted by: Andriy Voskoboinyk <s3erios@gmail.com> Changes: head/sys/dev/wpi/if_wpi.c head/sys/dev/wpi/if_wpivar.h
A commit references this bug: Author: adrian Date: Sun Mar 15 20:53:47 UTC 2015 New revision: 280086 URL: https://svnweb.freebsd.org/changeset/base/280086 Log: Use separate mutex for wv_bcbuf and wv_boff structures. PR: kern/197143 Submitted by: Andriy Voskoboinyk <s3erios@gmail.com> Changes: head/sys/dev/wpi/if_wpi.c head/sys/dev/wpi/if_wpivar.h
A commit references this bug: Author: adrian Date: Sun Mar 15 20:54:11 UTC 2015 New revision: 280087 URL: https://svnweb.freebsd.org/changeset/base/280087 Log: Encrypt frame if IEEE80211_BPF_CRYPTO is set. PR: kern/197143 Submitted by: Andriy Voskoboinyk <s3erios@gmail.com> Changes: head/sys/dev/wpi/if_wpi.c
A commit references this bug: Author: adrian Date: Sun Mar 15 20:54:41 UTC 2015 New revision: 280088 URL: https://svnweb.freebsd.org/changeset/base/280088 Log: Add support for AES-CCMP group keys. PR: kern/197143 Submitted by: Andriy Voskoboinyk <s3erios@gmail.com> Changes: head/sys/dev/wpi/if_wpi.c head/sys/dev/wpi/if_wpivar.h
A commit references this bug: Author: adrian Date: Sun Mar 15 20:55:24 UTC 2015 New revision: 280089 URL: https://svnweb.freebsd.org/changeset/base/280089 Log: Remove unnecessary debug output. PR: kern/197143 Submitted by: Andriy Voskoboinyk <s3erios@gmail.com> Changes: head/sys/dev/wpi/if_wpi.c
A commit references this bug: Author: adrian Date: Sun Mar 15 21:03:00 UTC 2015 New revision: 280091 URL: https://svnweb.freebsd.org/changeset/base/280091 Log: Remove unnecessary assignment. PR: kern/197143 Submitted by: Andriy Voskoboinyk <s3erios@gmail.com> Changes: head/sys/dev/wpi/if_wpi.c
A commit references this bug: Author: adrian Date: Sun Mar 15 21:03:49 UTC 2015 New revision: 280092 URL: https://svnweb.freebsd.org/changeset/base/280092 Log: Remove unrelated comment. PR: kern/197143 Submitted by: Andriy Voskoboinyk <s3erios@gmail.com> Changes: head/sys/dev/wpi/if_wpi.c
A commit references this bug: Author: adrian Date: Sun Mar 15 21:04:56 UTC 2015 New revision: 280093 URL: https://svnweb.freebsd.org/changeset/base/280093 Log: * Add new debug category * Refactor out / restructure / extend debugging information PR: kern/197143 Submitted by: Andriy Voskoboinyk <s3erios@gmail.com> Changes: head/sys/dev/wpi/if_wpi.c head/sys/dev/wpi/if_wpi_debug.h head/sys/dev/wpi/if_wpireg.h
A commit references this bug: Author: adrian Date: Sun Mar 15 21:06:00 UTC 2015 New revision: 280094 URL: https://svnweb.freebsd.org/changeset/base/280094 Log: Add WPI_DEBUG_NODE + some debugging. PR: kern/197143 Submitted by: Andriy Voskoboinyk <s3erios@gmail.com> Changes: head/sys/dev/wpi/if_wpi.c head/sys/dev/wpi/if_wpi_debug.h
A commit references this bug: Author: adrian Date: Sun Mar 15 21:06:36 UTC 2015 New revision: 280095 URL: https://svnweb.freebsd.org/changeset/base/280095 Log: Refactor wpi_ioctl(). PR: kern/197143 Submitted by: Andriy Voskoboinyk <s3erios@gmail.com> Changes: head/sys/dev/wpi/if_wpi.c
A commit references this bug: Author: adrian Date: Sun Mar 15 21:07:44 UTC 2015 New revision: 280096 URL: https://svnweb.freebsd.org/changeset/base/280096 Log: Merge wpi_init() and wpi_init_locked(). PR: kern/197143 Submitted by: Andriy Voskoboinyk <s3erios@gmail.com> Changes: head/sys/dev/wpi/if_wpi.c
A commit references this bug: Author: adrian Date: Sun Mar 15 21:08:25 UTC 2015 New revision: 280097 URL: https://svnweb.freebsd.org/changeset/base/280097 Log: Acquire ifq lock when checking / modifying IFF_DRV_OACTIVE flag. PR: kern/197143 Submitted by: Andriy Voskoboinyk <s3erios@gmail.com> Changes: head/sys/dev/wpi/if_wpi.c
A commit references this bug: Author: adrian Date: Sun Mar 15 21:08:54 UTC 2015 New revision: 280098 URL: https://svnweb.freebsd.org/changeset/base/280098 Log: Do some cleanup before device startup. PR: kern/197143 Submitted by: Andriy Voskoboinyk <s3erios@gmail.com> Changes: head/sys/dev/wpi/if_wpi.c
A commit references this bug: Author: adrian Date: Sun Mar 15 21:09:30 UTC 2015 New revision: 280099 URL: https://svnweb.freebsd.org/changeset/base/280099 Log: Disable powersave in IBSS mode (packet loss > 90%.) PR: kern/197143 Submitted by: Andriy Voskoboinyk <s3erios@gmail.com> Changes: head/sys/dev/wpi/if_wpi.c
A commit references this bug: Author: adrian Date: Sun Mar 15 21:11:01 UTC 2015 New revision: 280100 URL: https://svnweb.freebsd.org/changeset/base/280100 Log: Add more KASSERTs. (Committer note: these checks will have to be re-established in a future commit as /well/ as having the KASSERTs.) PR: kern/197143 Submitted by: Andriy Voskoboinyk <s3erios@gmail.com> Changes: head/sys/dev/wpi/if_wpi.c
A commit references this bug: Author: adrian Date: Sun Mar 15 21:12:06 UTC 2015 New revision: 280101 URL: https://svnweb.freebsd.org/changeset/base/280101 Log: Fix some printfs(); add some debugging. PR: kern/197143 Submitted by: Andriy Voskoboinyk <s3erios@gmail.com> Changes: head/sys/dev/wpi/if_wpi.c
A commit references this bug: Author: adrian Date: Sun Mar 15 21:12:58 UTC 2015 New revision: 280102 URL: https://svnweb.freebsd.org/changeset/base/280102 Log: Rearrange checks in wpi_send_rxon(). PR: kern/197143 Submitted by: Andriy Voskoboinyk <s3erios@gmail.com> Changes: head/sys/dev/wpi/if_wpi.c
A commit references this bug: Author: adrian Date: Sun Mar 15 21:17:04 UTC 2015 New revision: 280103 URL: https://svnweb.freebsd.org/changeset/base/280103 Log: Minor optimisation in wpi_limit_dwell() PR: kenr/197143 Submitted by: Andriy Voskoboinyk <s3erios@gmail.com> Changes: head/sys/dev/wpi/if_wpi.c
A commit references this bug: Author: adrian Date: Sun Mar 15 21:17:58 UTC 2015 New revision: 280104 URL: https://svnweb.freebsd.org/changeset/base/280104 Log: Merge wpi_start() and wpi_start_locked(). PR: kern/197143 Submitted by: Andriy Voskoboinyk <s3erios@gmail.com> Changes: head/sys/dev/wpi/if_wpi.c
A commit references this bug: Author: adrian Date: Sun Mar 15 21:18:19 UTC 2015 New revision: 280105 URL: https://svnweb.freebsd.org/changeset/base/280105 Log: Add experimental HOSTAP support. PR: kern/197143 Submitted by: Andriy Voskoboinyk <s3erios@gmail.com> Changes: head/sys/dev/wpi/if_wpi.c head/sys/dev/wpi/if_wpireg.h
A commit references this bug: Author: adrian Date: Sun Mar 15 21:19:16 UTC 2015 New revision: 280106 URL: https://svnweb.freebsd.org/changeset/base/280106 Log: Split TX and scan timeouts; use a callout now for the scan timeout. PR: kern/197143 Submitted by: Andriy Voskoboinyk <s3erios@gmail.com> Changes: head/sys/dev/wpi/if_wpi.c head/sys/dev/wpi/if_wpivar.h
A commit references this bug: Author: adrian Date: Sun Mar 15 21:19:53 UTC 2015 New revision: 280107 URL: https://svnweb.freebsd.org/changeset/base/280107 Log: Use WPI_FILTER_BSS for checking current state. PR: kern/197143 Submitted by: Andriy Voskoboinyk <s3erios@gmail.com> Changes: head/sys/dev/wpi/if_wpi.c
A commit references this bug: Author: adrian Date: Sun Mar 15 21:20:59 UTC 2015 New revision: 280108 URL: https://svnweb.freebsd.org/changeset/base/280108 Log: Add mutex for RXON structure; convert some callouts/lock use to use RXON rather than the global WPI lock. PR: kern/197143 Submitted by: Andriy Voskoboinyk <s3erios@gmail.com> Changes: head/sys/dev/wpi/if_wpi.c head/sys/dev/wpi/if_wpivar.h
A commit references this bug: Author: adrian Date: Sun Mar 15 21:22:05 UTC 2015 New revision: 280109 URL: https://svnweb.freebsd.org/changeset/base/280109 Log: turn sc_tx_timeout into its own callout, rather than a global watchdog timer. PR: kern/197143 Submitted by: Andriy Voskoboinyk <s3erios@gmail.com> Changes: head/sys/dev/wpi/if_wpi.c head/sys/dev/wpi/if_wpivar.h
A commit references this bug: Author: adrian Date: Sun Mar 15 21:23:45 UTC 2015 New revision: 280110 URL: https://svnweb.freebsd.org/changeset/base/280110 Log: Don't use sc->qfullmsk in wpi_start(). PR: kern/197143 Submitted by: Andriy Voskoboinyk <s3erios@gmail.com> Changes: head/sys/dev/wpi/if_wpi.c
A commit references this bug: Author: adrian Date: Sun Mar 15 21:24:12 UTC 2015 New revision: 280111 URL: https://svnweb.freebsd.org/changeset/base/280111 Log: Regroup ring state checks in wpi_tx_done(). PR: kern/197143 Submitted by: Andriy Voskoboinyk <s3erios@gmail.com> Changes: head/sys/dev/wpi/if_wpi.c
A commit references this bug: Author: adrian Date: Sun Mar 15 21:25:07 UTC 2015 New revision: 280112 URL: https://svnweb.freebsd.org/changeset/base/280112 Log: Add an extra mutex for qfullmsk / ring->queued variables. PR: kern/197143 Submitted by: Andriy Voskoboinyk <s3erios@gmail.com> Changes: head/sys/dev/wpi/if_wpi.c head/sys/dev/wpi/if_wpivar.h
A commit references this bug: Author: adrian Date: Sun Mar 15 21:26:23 UTC 2015 New revision: 280113 URL: https://svnweb.freebsd.org/changeset/base/280113 Log: Add another lock for the TX path. PR: kern/197143 Submitted by: Andriy Voskoboinyk <s3erios@gmail.com> Changes: head/sys/dev/wpi/if_wpi.c head/sys/dev/wpi/if_wpivar.h
A commit references this bug: Author: adrian Date: Sun Mar 15 21:27:04 UTC 2015 New revision: 280114 URL: https://svnweb.freebsd.org/changeset/base/280114 Log: Use correct types (attachment 154379 [details]) PR: kern/197143 Submitted by: Andriy Voskoboinyk <s3erios@gmail.com> Changes: head/sys/dev/wpi/if_wpi.c
A commit references this bug: Author: adrian Date: Sun Mar 15 21:27:51 UTC 2015 New revision: 280115 URL: https://svnweb.freebsd.org/changeset/base/280115 Log: Reformatting changes. (attachment 154380 [details]) PR: kern/197143 Submitted by: Andriy Voskoboinyk <s3erios@gmail.com> Changes: head/sys/dev/wpi/if_wpivar.h
A commit references this bug: Author: adrian Date: Sun Mar 15 21:29:19 UTC 2015 New revision: 280116 URL: https://svnweb.freebsd.org/changeset/base/280116 Log: Don't unlock mutex in interrupt thread (except for wpi_rx_done() - for now) - fixes various races between wpi_notif_intr() and wpi_stop_locked(). (attachment 154381 [details]) Committers note: yes, unlock/if_input/lock has to go away, but that'll have to be done later. PR: kern/197143 Submitted by: Andriy Voskoboinyk <s3erios@gmail.com> Changes: head/sys/dev/wpi/if_wpi.c
A commit references this bug: Author: adrian Date: Sun Mar 15 21:29:37 UTC 2015 New revision: 280118 URL: https://svnweb.freebsd.org/changeset/base/280118 Log: Fix scan timeouts with powersave enabled. PR: kern/197143 Submitted by: Andriy Voskoboinyk <s3erios@gmail.com> Changes: head/sys/dev/wpi/if_wpi.c
A commit references this bug: Author: adrian Date: Sun Mar 15 21:30:21 UTC 2015 New revision: 280119 URL: https://svnweb.freebsd.org/changeset/base/280119 Log: Workaround delays caused by vmem_check(). PR: kern/197143 Submitted by: Andriy Voskoboinyk <s3erios@gmail.com> Changes: head/sys/dev/wpi/if_wpi.c head/sys/dev/wpi/if_wpireg.h
A commit references this bug: Author: adrian Date: Sun Mar 15 21:32:12 UTC 2015 New revision: 280120 URL: https://svnweb.freebsd.org/changeset/base/280120 Log: Add a new taskqueue (device specific, not net80211 ic->tq); use it for device restart. (Committers note - once scan overhaul and a few other things have been fixed in net80211 to not block things in the taskqueue, this can disappear and the device specific taskqueues in other drivers can also go away.) PR: kern/197143 Submitted by: Andriy Voskoboinyk <s3erios@gmail.com> Changes: head/sys/dev/wpi/if_wpi.c head/sys/dev/wpi/if_wpivar.h
Hi! I've committed everything to attachment 154384 [details]. There are a few comments in the commit messages, so please have a read of the ticket history and see what's there. Thanks! -a
Created attachment 155332 [details] Fix buffer overflow (unbreaks 802.11a capable NICs)
Created attachment 155333 [details] Do not access peripheral before clock stabilization
A commit references this bug: Author: adrian Date: Thu Apr 9 04:51:40 UTC 2015 New revision: 281287 URL: https://svnweb.freebsd.org/changeset/base/281287 Log: Fix buffer overflow introduced in previous commits (unbreaks 802.11a capable NICs). Tested: * PCIe Intel 3945ABG NIC PR: kern/197143 Submitted by: Andriy Voskoboinyk <s3erios@gmail.com> Changes: head/sys/dev/wpi/if_wpi.c
A commit references this bug: Author: adrian Date: Thu Apr 9 04:56:25 UTC 2015 New revision: 281288 URL: https://svnweb.freebsd.org/changeset/base/281288 Log: Do not access peripheral before clock stabilization. Tested: * Intel 3945ABG NIC, STA mode PR: kern/197143 Submitted by: Andriy Voskoboinyk <s3erios@gmail.com> Changes: head/sys/dev/wpi/if_wpi.c
Created attachment 156164 [details] Retry twice on the same rate (works as intended in wpi_tx_done())
Created attachment 156165 [details] Remove no-op flags cleanup
Created attachment 156166 [details] Add a few local variables to improve readability
Created attachment 156167 [details] Remove workaround for bug 199676
Created attachment 156168 [details] Fix KASSERT statements in if_wpi_debug.h
Created attachment 156169 [details] Add wpi_check_bss_filter()
Created attachment 156170 [details] Remove unneeded endianness conversion
Created attachment 156171 [details] Use another workaround for scanning
Created attachment 156172 [details] Move radiooff_task to the internal taskqueue
Created attachment 156173 [details] Add TX status codes (obtained from iwlegacy)
Created attachment 156174 [details] Turn off led when leaving RUN state
Created attachment 156175 [details] Fix active/passive dwell calculation
Created attachment 156176 [details] Fix pause scan time calculation (the remainder must be less than beacon interval)
Created attachment 156177 [details] Do not disable beacon notifications (unbreaks scanning on passive channels)
Would you please open a new ticket? This one is getting a bit long.. :) Thanks!
Created attachment 156178 [details] Check channels which are passed in IBSS mode
Created attachment 156179 [details] Unbreak scanning after RUN -> SCAN state transition.
Created attachment 156180 [details] Create another debug category for WPI_BEACON_MISSED notification
Created attachment 156181 [details] Improve beacon miss detection
Created attachment 156182 [details] Limit minimum threshold of missed beacons
Created attachment 156183 [details] Display more information for beacon miss debugging
Created attachment 156184 [details] Add comment about AUTH -> AUTH state transition + fix some style issues
Created attachment 156185 [details] Try to fix passive scanning hang on beacon miss
Created attachment 156186 [details] Add debug output for WPI_BEACON_SENT event
Created attachment 156187 [details] Fix sequence number generation for beacon frames
Created attachment 156188 [details] Do not include WPI_START_SCAN event processing into non-debug builds
Created attachment 156189 [details] Use nitems() for counting elements in arrays
Created attachment 156190 [details] [iwn?] Fix memory leak in wpi_reset_tx_ring()
Created attachment 156191 [details] Fix warning about comparison of integers of different signs
Created attachment 156192 [details] [iwn?] Use correct sequence numbers with non-QoS STAs
Created attachment 156193 [details] Fix various powersave races + optimize tx/rx pointer update when powersave is off
Created attachment 156194 [details] Handle properly IBSS merges (works with patch from bug 199632)
Created attachment 156195 [details] [iwn] Do not filter control frames in monitor mode
Ok, I'm going to review down to 156195 and then commit these if they're okay. Please open another ticket for further wpi sync. :) Thanks!
A commit references this bug: Author: adrian Date: Sun May 3 22:13:56 UTC 2015 New revision: 282371 URL: https://svnweb.freebsd.org/changeset/base/282371 Log: Add a few local variables to improve readability. PR: kern/197143 Submitted by: Andriy Voskoboinyk <s3erios@gmail.com> Changes: head/sys/dev/wpi/if_wpi.c
A commit references this bug: Author: adrian Date: Sun May 3 22:30:12 UTC 2015 New revision: 282373 URL: https://svnweb.freebsd.org/changeset/base/282373 Log: Remove workaround for bug 199676. PR: kern/197143 Submitted by: Andriy Voskoboinyk <s3erios@gmail.com> Changes: head/sys/dev/wpi/if_wpi.c
A commit references this bug: Author: adrian Date: Sun May 3 22:32:46 UTC 2015 New revision: 282374 URL: https://svnweb.freebsd.org/changeset/base/282374 Log: Fix KASSERT statements in if_wpi_debug.h PR: kern/197143 Submitted by: Andriy Voskoboinyk <s3erios@gmail.com> Changes: head/sys/dev/wpi/if_wpi_debug.h
A commit references this bug: Author: adrian Date: Sun May 3 22:34:33 UTC 2015 New revision: 282375 URL: https://svnweb.freebsd.org/changeset/base/282375 Log: Add wpi_check_bss_filter() PR: kern/197143 Submitted by: Andriy Voskoboinyk <s3erios@gmail.com> Changes: head/sys/dev/wpi/if_wpi.c
(In reply to Andriy Voskoboinyk from comment #168) I'm skipping 156170 - the intel developers I've spoken to try really hard to make this stuff work on non-intel platforms. Occasionally people do create products with it that aren't hooked into little-endian x86 platforms.
A commit references this bug: Author: adrian Date: Sun May 3 22:43:46 UTC 2015 New revision: 282376 URL: https://svnweb.freebsd.org/changeset/base/282376 Log: Use another workaround for scanning. PR: kern/197143 Submitted by: Andriy Voskoboinyk <s3erios@gmail.com> Changes: head/sys/dev/wpi/if_wpi.c head/sys/dev/wpi/if_wpivar.h
A commit references this bug: Author: adrian Date: Sun May 3 22:47:06 UTC 2015 New revision: 282377 URL: https://svnweb.freebsd.org/changeset/base/282377 Log: Move radiooff_task to the internal taskqueue. PR: kern/197143 Submitted by: Andriy Voskoboinyk <s3erios@gmail.com> Changes: head/sys/dev/wpi/if_wpi.c
A commit references this bug: Author: adrian Date: Sun May 3 22:49:48 UTC 2015 New revision: 282378 URL: https://svnweb.freebsd.org/changeset/base/282378 Log: Add TX status codes (obtained from iwlegacy) PR: kern/197143 Differential Revision: Andriy Voskoboinyk <s3erios@gmail.com> Obtained from: Linux drivers/net/wireless/iwlegacy Changes: head/sys/dev/wpi/if_wpi.c head/sys/dev/wpi/if_wpireg.h
A commit references this bug: Author: adrian Date: Sun May 3 22:55:07 UTC 2015 New revision: 282381 URL: https://svnweb.freebsd.org/changeset/base/282381 Log: Turn off led when leaving RUN state. PR: kern/197143 Submitted by: Andriy Voskoboinyk <s3erios@gmail.com> Changes: head/sys/dev/wpi/if_wpi.c
A commit references this bug: Author: adrian Date: Sun May 3 22:56:37 UTC 2015 New revision: 282382 URL: https://svnweb.freebsd.org/changeset/base/282382 Log: Fix active/passive dwell calculation. PR: kern/197143 Submitted by: Andriy Voskoboinyk <s3erios@gmail.com> Changes: head/sys/dev/wpi/if_wpi.c head/sys/dev/wpi/if_wpireg.h
A commit references this bug: Author: adrian Date: Sun May 3 23:03:07 UTC 2015 New revision: 282383 URL: https://svnweb.freebsd.org/changeset/base/282383 Log: Fix pause scan time calculation (the remainder must be less than beacon interval). PR: kern/197143 Submitted by: Andriy Voskoboinyk <s3erios@gmail.com> Changes: head/sys/dev/wpi/if_wpi.c head/sys/dev/wpi/if_wpireg.h
A commit references this bug: Author: adrian Date: Sun May 3 23:06:20 UTC 2015 New revision: 282384 URL: https://svnweb.freebsd.org/changeset/base/282384 Log: Do not disable beacon notifications (unbreaks scanning on passive channels). PR: kern/197143 Submitted by: Andriy Voskoboinyk <s3erios@gmail.com> Changes: head/sys/dev/wpi/if_wpi.c
A commit references this bug: Author: adrian Date: Sun May 3 23:08:26 UTC 2015 New revision: 282385 URL: https://svnweb.freebsd.org/changeset/base/282385 Log: Check channels which are passed in IBSS mode. PR: kern/197143 Submitted by: Andriy Voskoboinyk <s3erios@gmail.com> Changes: head/sys/dev/wpi/if_wpi.c
A commit references this bug: Author: adrian Date: Sun May 3 23:09:48 UTC 2015 New revision: 282386 URL: https://svnweb.freebsd.org/changeset/base/282386 Log: Unbreak scanning after RUN -> SCAN state transition. PR: kern/197143 Submitted by: Andriy Voskoboinyk <s3erios@gmail.com> Changes: head/sys/dev/wpi/if_wpi.c
A commit references this bug: Author: adrian Date: Sun May 3 23:21:17 UTC 2015 New revision: 282388 URL: https://svnweb.freebsd.org/changeset/base/282388 Log: Improve beacon miss detection. PR: kern/197143 Submitted by: Andriy Voskoboinyk <s3erios@gmail.com> Changes: head/sys/dev/wpi/if_wpi.c
A commit references this bug: Author: adrian Date: Sun May 3 23:24:21 UTC 2015 New revision: 282389 URL: https://svnweb.freebsd.org/changeset/base/282389 Log: Limit minimum threshold of missed beacons. PR: kern/197143 Submitted by: Andriy Voskoboinyk <s3erios@gmail.com> Changes: head/sys/dev/wpi/if_wpi.c
A commit references this bug: Author: adrian Date: Sun May 3 23:25:34 UTC 2015 New revision: 282390 URL: https://svnweb.freebsd.org/changeset/base/282390 Log: Display more information for beacon miss debugging. PR: kern/197143 Submitted by: Andriy Voskoboinyk <s3erios@gmail.com> Changes: head/sys/dev/wpi/if_wpi.c
A commit references this bug: Author: adrian Date: Sun May 3 23:27:37 UTC 2015 New revision: 282391 URL: https://svnweb.freebsd.org/changeset/base/282391 Log: Add comment about AUTH -> AUTH state transition + fix some style issues. PR: kern/197143 Submitted by: Andriy Voskoboinyk <s3erios@gmail.com> Changes: head/sys/dev/wpi/if_wpi.c
A commit references this bug: Author: adrian Date: Sun May 3 23:28:55 UTC 2015 New revision: 282392 URL: https://svnweb.freebsd.org/changeset/base/282392 Log: Try to fix passive scanning hang on beacon miss. PR: kern/197143 Submitted by: Andriy Voskoboinyk <s3erios@gmail.com> Changes: head/sys/dev/wpi/if_wpi.c head/sys/dev/wpi/if_wpi_debug.h head/sys/dev/wpi/if_wpireg.h
A commit references this bug: Author: adrian Date: Sun May 3 23:30:05 UTC 2015 New revision: 282393 URL: https://svnweb.freebsd.org/changeset/base/282393 Log: Add debug output for WPI_BEACON_SENT event. PR: kern/197143 Submitted by: Andriy Voskoboinyk <s3erios@gmail.com> Changes: head/sys/dev/wpi/if_wpi.c
A commit references this bug: Author: adrian Date: Sun May 3 23:34:25 UTC 2015 New revision: 282394 URL: https://svnweb.freebsd.org/changeset/base/282394 Log: Fix sequence number generation for beacon frames. PR: kern/197143 Submitted by: Andriy Voskoboinyk <s3erios@gmail.com> Changes: head/sys/dev/wpi/if_wpi.c
A commit references this bug: Author: adrian Date: Sun May 3 23:35:12 UTC 2015 New revision: 282395 URL: https://svnweb.freebsd.org/changeset/base/282395 Log: Do not include WPI_START_SCAN event processing into non-debug builds. PR: kern/197143 Submitted by: Andriy Voskoboinyk <s3erios@gmail.com> Changes: head/sys/dev/wpi/if_wpi.c
A commit references this bug: Author: adrian Date: Sun May 3 23:35:45 UTC 2015 New revision: 282396 URL: https://svnweb.freebsd.org/changeset/base/282396 Log: Use nitems() for counting elements in arrays. PR: kern/197143 Submitted by: Andriy Voskoboinyk <s3erios@gmail.com> Changes: head/sys/dev/wpi/if_wpi.c
A commit references this bug: Author: adrian Date: Sun May 3 23:36:26 UTC 2015 New revision: 282397 URL: https://svnweb.freebsd.org/changeset/base/282397 Log: [iwn?] Fix memory leak in wpi_reset_tx_ring(). PR: kern/197143 Differential Revision: Andriy Voskoboinyk <s3erios@gmail.com> Changes: head/sys/dev/wpi/if_wpi.c
A commit references this bug: Author: adrian Date: Sun May 3 23:37:14 UTC 2015 New revision: 282398 URL: https://svnweb.freebsd.org/changeset/base/282398 Log: Fix warning about comparison of integers of different signs. PR: kern/197143 Submitted by: Andriy Voskoboinyk <s3erios@gmail.com> Changes: head/sys/dev/wpi/if_wpi.c head/sys/dev/wpi/if_wpi_debug.h
A commit references this bug: Author: adrian Date: Sun May 3 23:38:33 UTC 2015 New revision: 282399 URL: https://svnweb.freebsd.org/changeset/base/282399 Log: [iwn?] Use correct sequence numbers with non-QoS STAs. PR: kern/197143 Submitted by: Andriy Voskoboinyk <s3erios@gmail.com> Changes: head/sys/dev/wpi/if_wpi.c
A commit references this bug: Author: adrian Date: Sun May 3 23:39:03 UTC 2015 New revision: 282400 URL: https://svnweb.freebsd.org/changeset/base/282400 Log: Fix various powersave races + optimize tx/rx pointer update when powersave is off. PR: kern/197143 Submitted by: Andriy Voskoboinyk <s3erios@gmail.com> Changes: head/sys/dev/wpi/if_wpi.c head/sys/dev/wpi/if_wpivar.h
A commit references this bug: Author: adrian Date: Sun May 3 23:39:45 UTC 2015 New revision: 282401 URL: https://svnweb.freebsd.org/changeset/base/282401 Log: Handle properly IBSS merges (works with patch from bug 199632). PR: kern/197143 Submitted by: Andriy Voskoboinyk <s3erios@gmail.com> Changes: head/sys/dev/wpi/if_wpi.c head/sys/dev/wpi/if_wpivar.h
A commit references this bug: Author: adrian Date: Sun May 3 23:40:13 UTC 2015 New revision: 282402 URL: https://svnweb.freebsd.org/changeset/base/282402 Log: [iwn] Do not filter control frames in monitor mode. PR: kern/197143 Submitted by: Andriy Voskoboinyk <s3erios@gmail.com> Changes: head/sys/dev/wpi/if_wpi.c
Done and done. :) please open a new ticket if you have more patches!