Bug 197143

Summary: [wpi] [patch]: sync with iwn / OpenBSD wpi
Product: Base System Reporter: Andriy Voskoboinyk <avos>
Component: wirelessAssignee: freebsd-wireless (Nobody) <wireless>
Status: Closed FIXED    
Severity: Affects Only Me CC: adrian
Priority: ---    
Version: CURRENT   
Hardware: Any   
OS: Any   
Attachments:
Description Flags
Patch (against HEAD)
none
Patch (against HEAD)
none
Bugfixes
none
Bugfixes2.diff
none
Bugfixes2.diff
none
Copy correct addresses to node.macaddr / rxon.myaddr
none
Revert changes related to IEEE80211_F_DATAPAD (there is no padding in RX path).
none
Fix mbuf mapping errors in wpi_cmd2() + add check for nsegs
none
Fix a typo (IEEE80211_S_SCAN -> IEEE80211_F_SCAN)
none
Add missed ieee80211_draintask
none
Run callout_reset() with mutex held.
none
Divide ackfailcnt by 2 (firmware decreases rate after two unsuccessful retries)
none
Fix races between wpi_rx_done() and wpi_stop()
none
Fix panics in wpi_tx_done() when powersave is enabled
none
Use correct pointer for wpi_softc
none
Check some variables only on active TX rings
none
(Non-functional) Fix indentation.
none
Fix error handling in wpi_scan()
none
Fix warning: Value stored to 'supportsa' is never read
none
Replace msleep() by mtx_sleep()
none
(Non-functional) Wrap cast to (struct wpi_node *) into WPI_NODE macros
none
(Non-functional) Replace few numbers with named constants
none
wpi_intr(): remove duplicate code
none
(Non-functional) Break lines around 80 characters
none
(Non-functional) Remove some unneeded variables
none
(Non-functional) wpi_tx_data: move key processing
none
Replace kernel unit number allocator with local set of functions
none
Wrap node addition in STA mode into wpi_add_sta_node()
none
Add separate lock for TX queues
none
Eliminate 'busy' flag
none
Remove unnecessary locking
none
Move some code under mutex
none
Use ring->queued for WPI_CMD_TX_DATA only
none
Optimize sc->rev processing
none
Add node table lock (fixes possible LOR in wpi_node_free())
none
wpi_tx_done() shouldn't wait for wpi_start()
none
Move IBSS association processing to wpi_newassoc()
none
Fix debug category in wpi_read_eeprom_band()
none
Use WPI_RSSI_OFFSET instead of stat->noise (always 0 for me)
none
Allocate 'data' field in wpi_buf structure as static array
none
Move beacon command initialization to wpi_init_beacon()
none
Use ieee80211_beacon_update() for dynamic beacon contents
none
(Non-functional) Add prefixes to field names
none
Use separate mutex for wv_bcbuf / wv_boff structures
none
Encrypt frame if IEEE80211_BPF_CRYPTO flag is set
none
Add support for AES-CCMP group keys
none
Remove useless message
none
Remove unnecessary assignment
none
Remove unrelated comment
none
Add new debug category: WPI_DEBUG_REGISTER (0x00080000)
none
Add new debug category: WPI_DEBUG_NODE
none
Refactor wpi_ioctl()
none
Merge wpi_init() and wpi_init_locked()
none
Acquire ifq lock while checking / modifying IFF_DRV_OACTIVE flag
none
Do some cleanup before device startup
none
Disable powersave in IBSS mode (packet loss > 90%)
none
Add few KASSERTs
none
Fix some printfs
none
Rearrange checks in wpi_send_rxon()
none
Minor optimization in wpi_limit_dwell()
none
Merge wpi_start() and wpi_start_locked()
none
Add (experimental) HOSTAP mode support
none
Split TX and scan timers
none
Use WPI_FILTER_BSS for checking current state
none
Add mutex for rxon structure
none
Turn sc_tx_timer into callout parameter
none
Don't use sc->qfullmsk in wpi_start()
none
Regroup ring state checks in wpi_tx_done()
none
Add extra mutex for qfullmsk / ring->queued variables
none
Use another lock for TX path
none
Use correct types
none
Sync with previous version
none
Do not unlock mutex in interrupt thread (except wpi_rx_done()) - fixes various races between wpi_notif_intr() and wpi_stop_locked()
none
Fix scan timeouts with powersave enabled
none
Workaround delays caused by vmem_check()
none
Use separate taskqueue for device restart
none
Fix buffer overflow (unbreaks 802.11a capable NICs)
none
Do not access peripheral before clock stabilization
none
Retry twice on the same rate (works as intended in wpi_tx_done())
none
Remove no-op flags cleanup
none
Add a few local variables to improve readability
none
Remove workaround for bug 199676
none
Fix KASSERT statements in if_wpi_debug.h
none
Add wpi_check_bss_filter()
none
Remove unneeded endianness conversion
none
Use another workaround for scanning
none
Move radiooff_task to the internal taskqueue
none
Add TX status codes (obtained from iwlegacy)
none
Turn off led when leaving RUN state
none
Fix active/passive dwell calculation
none
Fix pause scan time calculation (the remainder must be less than beacon interval)
none
Do not disable beacon notifications (unbreaks scanning on passive channels)
none
Check channels which are passed in IBSS mode
none
Unbreak scanning after RUN -> SCAN state transition.
none
Create another debug category for WPI_BEACON_MISSED notification
none
Improve beacon miss detection
none
Limit minimum threshold of missed beacons
none
Display more information for beacon miss debugging
none
Add comment about AUTH -> AUTH state transition + fix some style issues
none
Try to fix passive scanning hang on beacon miss
none
Add debug output for WPI_BEACON_SENT event
none
Fix sequence number generation for beacon frames
none
Do not include WPI_START_SCAN event processing into non-debug builds
none
Use nitems() for counting elements in arrays
none
[iwn?] Fix memory leak in wpi_reset_tx_ring()
none
Fix warning about comparison of integers of different signs
none
[iwn?] Use correct sequence numbers with non-QoS STAs
none
Fix various powersave races + optimize tx/rx pointer update when powersave is off
none
Handle properly IBSS merges (works with patch from bug 199632)
none
[iwn] Do not filter control frames in monitor mode none

Description Andriy Voskoboinyk freebsd_committer freebsd_triage 2015-01-27 22:12:37 UTC
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)
Comment 1 Andriy Voskoboinyk freebsd_committer freebsd_triage 2015-02-07 12:29:42 UTC
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.
Comment 2 commit-hook freebsd_committer freebsd_triage 2015-02-07 23:09:41 UTC
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
Comment 3 commit-hook freebsd_committer freebsd_triage 2015-02-07 23:11:42 UTC
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
Comment 4 Adrian Chadd freebsd_committer freebsd_triage 2015-02-07 23:13:39 UTC
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!
Comment 5 Andriy Voskoboinyk freebsd_committer freebsd_triage 2015-02-09 21:12:11 UTC
(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.
Comment 6 Andriy Voskoboinyk freebsd_committer freebsd_triage 2015-02-14 17:23:36 UTC
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.
Comment 7 Adrian Chadd freebsd_committer freebsd_triage 2015-02-14 17:46:10 UTC
Cool, committed to HEAD! Please check!

Thankyou!
Comment 8 commit-hook freebsd_committer freebsd_triage 2015-02-14 17:46:15 UTC
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
Comment 9 Andriy Voskoboinyk freebsd_committer freebsd_triage 2015-03-06 16:09:02 UTC
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.
Comment 10 Adrian Chadd freebsd_committer freebsd_triage 2015-03-06 18:02:46 UTC
Have you tested this on -HEAD with witness debugging? Changing the locks may cause more LORs and I don't want to break locking. :(
Comment 11 Andriy Voskoboinyk freebsd_committer freebsd_triage 2015-03-07 22:29:08 UTC
Created attachment 153977 [details]
Bugfixes2.diff

- Fix locking problems.
- Fix mbuf mapping errors in wpi_cmd2().
- Add note about DIAGNOSTIC option.
Comment 12 Andriy Voskoboinyk freebsd_committer freebsd_triage 2015-03-07 23:03:29 UTC
(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.
Comment 13 Adrian Chadd freebsd_committer freebsd_triage 2015-03-07 23:54:56 UTC
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!
Comment 14 Andriy Voskoboinyk freebsd_committer freebsd_triage 2015-03-08 00:11:01 UTC
Created attachment 153983 [details]
Copy correct addresses to node.macaddr / rxon.myaddr
Comment 15 Andriy Voskoboinyk freebsd_committer freebsd_triage 2015-03-08 01:17:53 UTC
Created attachment 153985 [details]
Revert changes related to IEEE80211_F_DATAPAD (there is no padding in RX path).
Comment 16 commit-hook freebsd_committer freebsd_triage 2015-03-08 01:45:25 UTC
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
Comment 17 commit-hook freebsd_committer freebsd_triage 2015-03-08 01:47:26 UTC
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
Comment 18 Adrian Chadd freebsd_committer freebsd_triage 2015-03-08 01:48:39 UTC
Ok! Those two are committed.

What's next to break out and commit?
Comment 19 Andriy Voskoboinyk freebsd_committer freebsd_triage 2015-03-08 11:05:44 UTC
Created attachment 153999 [details]
Fix mbuf mapping errors in wpi_cmd2() + add check for nsegs
Comment 20 Andriy Voskoboinyk freebsd_committer freebsd_triage 2015-03-08 11:07:01 UTC
Created attachment 154000 [details]
Fix a typo (IEEE80211_S_SCAN -> IEEE80211_F_SCAN)
Comment 21 Andriy Voskoboinyk freebsd_committer freebsd_triage 2015-03-08 11:14:06 UTC
Created attachment 154002 [details]
Add missed ieee80211_draintask
Comment 22 Andriy Voskoboinyk freebsd_committer freebsd_triage 2015-03-08 11:35:47 UTC
Created attachment 154006 [details]
Run callout_reset() with mutex held.
Comment 23 Andriy Voskoboinyk freebsd_committer freebsd_triage 2015-03-08 12:00:49 UTC
Created attachment 154007 [details]
Divide ackfailcnt by 2 (firmware decreases rate after two unsuccessful retries)
Comment 24 Andriy Voskoboinyk freebsd_committer freebsd_triage 2015-03-08 12:08:28 UTC
Created attachment 154009 [details]
Fix races between wpi_rx_done() and wpi_stop()
Comment 25 Andriy Voskoboinyk freebsd_committer freebsd_triage 2015-03-08 12:31:38 UTC
Created attachment 154010 [details]
Fix panics in wpi_tx_done() when powersave is enabled
Comment 26 Andriy Voskoboinyk freebsd_committer freebsd_triage 2015-03-08 13:09:26 UTC
Created attachment 154011 [details]
Use correct pointer for wpi_softc
Comment 27 Andriy Voskoboinyk freebsd_committer freebsd_triage 2015-03-08 13:34:14 UTC
Created attachment 154013 [details]
Check some variables only on active TX rings
Comment 28 Andriy Voskoboinyk freebsd_committer freebsd_triage 2015-03-08 14:39:01 UTC
Created attachment 154015 [details]
(Non-functional) Fix indentation.
Comment 29 Andriy Voskoboinyk freebsd_committer freebsd_triage 2015-03-08 14:56:32 UTC
Created attachment 154016 [details]
Fix error handling in wpi_scan()
Comment 30 Andriy Voskoboinyk freebsd_committer freebsd_triage 2015-03-08 15:30:22 UTC
Created attachment 154017 [details]
Fix warning: Value stored to 'supportsa' is never read
Comment 31 Andriy Voskoboinyk freebsd_committer freebsd_triage 2015-03-08 15:43:16 UTC
Created attachment 154019 [details]
Replace msleep() by mtx_sleep()
Comment 32 Andriy Voskoboinyk freebsd_committer freebsd_triage 2015-03-08 15:58:58 UTC
Created attachment 154020 [details]
(Non-functional) Wrap cast to (struct wpi_node *) into WPI_NODE macros
Comment 33 Andriy Voskoboinyk freebsd_committer freebsd_triage 2015-03-08 16:20:27 UTC
Created attachment 154021 [details]
(Non-functional) Replace few numbers with named constants
Comment 34 Andriy Voskoboinyk freebsd_committer freebsd_triage 2015-03-08 17:06:31 UTC
Created attachment 154022 [details]
wpi_intr(): remove duplicate code
Comment 35 Andriy Voskoboinyk freebsd_committer freebsd_triage 2015-03-08 17:09:18 UTC
Created attachment 154024 [details]
(Non-functional) Break lines around 80 characters
Comment 36 Andriy Voskoboinyk freebsd_committer freebsd_triage 2015-03-08 17:29:03 UTC
Created attachment 154026 [details]
(Non-functional) Remove some unneeded variables
Comment 37 Andriy Voskoboinyk freebsd_committer freebsd_triage 2015-03-08 17:53:46 UTC
Created attachment 154030 [details]
(Non-functional) wpi_tx_data: move key processing
Comment 38 Andriy Voskoboinyk freebsd_committer freebsd_triage 2015-03-08 18:51:21 UTC
Created attachment 154032 [details]
Replace kernel unit number allocator with local set of functions
Comment 39 Andriy Voskoboinyk freebsd_committer freebsd_triage 2015-03-08 19:19:35 UTC
Created attachment 154033 [details]
Wrap node addition in STA mode into wpi_add_sta_node()
Comment 40 Andriy Voskoboinyk freebsd_committer freebsd_triage 2015-03-15 11:40:04 UTC
Created attachment 154328 [details]
Add separate lock for TX queues
Comment 41 Andriy Voskoboinyk freebsd_committer freebsd_triage 2015-03-15 11:43:49 UTC
Created attachment 154329 [details]
Eliminate 'busy' flag
Comment 42 Andriy Voskoboinyk freebsd_committer freebsd_triage 2015-03-15 11:46:15 UTC
Created attachment 154330 [details]
Remove unnecessary locking
Comment 43 Andriy Voskoboinyk freebsd_committer freebsd_triage 2015-03-15 11:48:21 UTC
Created attachment 154332 [details]
Move some code under mutex
Comment 44 Andriy Voskoboinyk freebsd_committer freebsd_triage 2015-03-15 11:59:04 UTC
Created attachment 154334 [details]
Use ring->queued for WPI_CMD_TX_DATA only
Comment 45 Andriy Voskoboinyk freebsd_committer freebsd_triage 2015-03-15 12:00:12 UTC
Created attachment 154335 [details]
Optimize sc->rev processing
Comment 46 Andriy Voskoboinyk freebsd_committer freebsd_triage 2015-03-15 12:03:02 UTC
Created attachment 154336 [details]
Add node table lock (fixes possible LOR in wpi_node_free())
Comment 47 Andriy Voskoboinyk freebsd_committer freebsd_triage 2015-03-15 12:06:13 UTC
Created attachment 154337 [details]
wpi_tx_done() shouldn't wait for wpi_start()
Comment 48 Andriy Voskoboinyk freebsd_committer freebsd_triage 2015-03-15 12:14:00 UTC
Created attachment 154338 [details]
Move IBSS association processing to wpi_newassoc()
Comment 49 Andriy Voskoboinyk freebsd_committer freebsd_triage 2015-03-15 12:15:16 UTC
Created attachment 154340 [details]
Fix debug category in wpi_read_eeprom_band()
Comment 50 Andriy Voskoboinyk freebsd_committer freebsd_triage 2015-03-15 12:17:21 UTC
Created attachment 154341 [details]
Use WPI_RSSI_OFFSET instead of stat->noise (always 0 for me)
Comment 51 Andriy Voskoboinyk freebsd_committer freebsd_triage 2015-03-15 12:20:23 UTC
Created attachment 154343 [details]
Allocate 'data' field in wpi_buf structure as static array
Comment 52 Andriy Voskoboinyk freebsd_committer freebsd_triage 2015-03-15 12:22:45 UTC
Created attachment 154346 [details]
Move beacon command initialization to wpi_init_beacon()
Comment 53 Andriy Voskoboinyk freebsd_committer freebsd_triage 2015-03-15 12:24:42 UTC
Created attachment 154347 [details]
Use ieee80211_beacon_update() for dynamic beacon contents
Comment 54 Andriy Voskoboinyk freebsd_committer freebsd_triage 2015-03-15 12:26:35 UTC
Created attachment 154348 [details]
(Non-functional) Add prefixes to field names
Comment 55 Andriy Voskoboinyk freebsd_committer freebsd_triage 2015-03-15 12:29:22 UTC
Created attachment 154349 [details]
Use separate mutex for wv_bcbuf / wv_boff structures
Comment 56 Andriy Voskoboinyk freebsd_committer freebsd_triage 2015-03-15 12:35:10 UTC
Created attachment 154350 [details]
Encrypt frame if IEEE80211_BPF_CRYPTO flag is set
Comment 57 Andriy Voskoboinyk freebsd_committer freebsd_triage 2015-03-15 12:43:44 UTC
Created attachment 154351 [details]
Add support for AES-CCMP group keys
Comment 58 Andriy Voskoboinyk freebsd_committer freebsd_triage 2015-03-15 12:47:11 UTC
Created attachment 154352 [details]
Remove useless message
Comment 59 Andriy Voskoboinyk freebsd_committer freebsd_triage 2015-03-15 12:49:16 UTC
Created attachment 154353 [details]
Remove unnecessary assignment
Comment 60 Andriy Voskoboinyk freebsd_committer freebsd_triage 2015-03-15 12:50:25 UTC
Created attachment 154354 [details]
Remove unrelated comment
Comment 61 Andriy Voskoboinyk freebsd_committer freebsd_triage 2015-03-15 12:51:23 UTC
Created attachment 154355 [details]
Add new debug category: WPI_DEBUG_REGISTER (0x00080000)
Comment 62 Andriy Voskoboinyk freebsd_committer freebsd_triage 2015-03-15 12:53:23 UTC
Created attachment 154356 [details]
Add new debug category: WPI_DEBUG_NODE
Comment 63 Andriy Voskoboinyk freebsd_committer freebsd_triage 2015-03-15 12:54:36 UTC
Created attachment 154357 [details]
Refactor wpi_ioctl()
Comment 64 Andriy Voskoboinyk freebsd_committer freebsd_triage 2015-03-15 12:56:24 UTC
Created attachment 154358 [details]
Merge wpi_init() and wpi_init_locked()
Comment 65 Andriy Voskoboinyk freebsd_committer freebsd_triage 2015-03-15 12:58:47 UTC
Created attachment 154359 [details]
Acquire ifq lock while checking / modifying IFF_DRV_OACTIVE flag
Comment 66 Andriy Voskoboinyk freebsd_committer freebsd_triage 2015-03-15 13:00:45 UTC
Created attachment 154360 [details]
Do some cleanup before device startup
Comment 67 Andriy Voskoboinyk freebsd_committer freebsd_triage 2015-03-15 13:09:44 UTC
Created attachment 154361 [details]
Disable powersave in IBSS mode (packet loss > 90%)
Comment 68 Andriy Voskoboinyk freebsd_committer freebsd_triage 2015-03-15 13:13:35 UTC
Created attachment 154362 [details]
Add few KASSERTs
Comment 69 Andriy Voskoboinyk freebsd_committer freebsd_triage 2015-03-15 13:15:04 UTC
Created attachment 154363 [details]
Fix some printfs
Comment 70 Andriy Voskoboinyk freebsd_committer freebsd_triage 2015-03-15 13:19:32 UTC
Created attachment 154364 [details]
Rearrange checks in wpi_send_rxon()
Comment 71 Andriy Voskoboinyk freebsd_committer freebsd_triage 2015-03-15 13:22:26 UTC
Created attachment 154365 [details]
Minor optimization in wpi_limit_dwell()
Comment 72 Andriy Voskoboinyk freebsd_committer freebsd_triage 2015-03-15 13:23:24 UTC
Created attachment 154366 [details]
Merge wpi_start() and wpi_start_locked()
Comment 73 Andriy Voskoboinyk freebsd_committer freebsd_triage 2015-03-15 13:52:03 UTC
Created attachment 154368 [details]
Add (experimental) HOSTAP mode support
Comment 74 Andriy Voskoboinyk freebsd_committer freebsd_triage 2015-03-15 13:55:02 UTC
Created attachment 154369 [details]
Split TX and scan timers
Comment 75 Andriy Voskoboinyk freebsd_committer freebsd_triage 2015-03-15 13:57:08 UTC
Created attachment 154370 [details]
Use WPI_FILTER_BSS for checking current state
Comment 76 Andriy Voskoboinyk freebsd_committer freebsd_triage 2015-03-15 13:58:10 UTC
Created attachment 154371 [details]
Add mutex for rxon structure
Comment 77 Andriy Voskoboinyk freebsd_committer freebsd_triage 2015-03-15 14:03:19 UTC
Created attachment 154372 [details]
Turn sc_tx_timer into callout parameter
Comment 78 Andriy Voskoboinyk freebsd_committer freebsd_triage 2015-03-15 14:07:17 UTC
Created attachment 154373 [details]
Don't use sc->qfullmsk in wpi_start()
Comment 79 Andriy Voskoboinyk freebsd_committer freebsd_triage 2015-03-15 14:10:54 UTC
Created attachment 154374 [details]
Regroup ring state checks in wpi_tx_done()
Comment 80 Andriy Voskoboinyk freebsd_committer freebsd_triage 2015-03-15 14:13:59 UTC
Created attachment 154375 [details]
Add extra mutex for qfullmsk / ring->queued variables
Comment 81 Andriy Voskoboinyk freebsd_committer freebsd_triage 2015-03-15 14:16:23 UTC
Created attachment 154378 [details]
Use another lock for TX path
Comment 82 Andriy Voskoboinyk freebsd_committer freebsd_triage 2015-03-15 14:18:53 UTC
Created attachment 154379 [details]
Use correct types
Comment 83 Andriy Voskoboinyk freebsd_committer freebsd_triage 2015-03-15 14:20:00 UTC
Created attachment 154380 [details]
Sync with previous version
Comment 84 Andriy Voskoboinyk freebsd_committer freebsd_triage 2015-03-15 14:21:30 UTC
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()
Comment 85 Andriy Voskoboinyk freebsd_committer freebsd_triage 2015-03-15 14:22:37 UTC
Created attachment 154382 [details]
Fix scan timeouts with powersave enabled
Comment 86 Andriy Voskoboinyk freebsd_committer freebsd_triage 2015-03-15 14:23:56 UTC
Created attachment 154383 [details]
Workaround delays caused by vmem_check()
Comment 87 Andriy Voskoboinyk freebsd_committer freebsd_triage 2015-03-15 14:25:54 UTC
Created attachment 154384 [details]
Use separate taskqueue for device restart
Comment 88 commit-hook freebsd_committer freebsd_triage 2015-03-15 20:10:31 UTC
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
Comment 89 commit-hook freebsd_committer freebsd_triage 2015-03-15 20:11:32 UTC
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
Comment 90 commit-hook freebsd_committer freebsd_triage 2015-03-15 20:12:34 UTC
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
Comment 91 commit-hook freebsd_committer freebsd_triage 2015-03-15 20:13:35 UTC
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
Comment 92 commit-hook freebsd_committer freebsd_triage 2015-03-15 20:14:37 UTC
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
Comment 93 commit-hook freebsd_committer freebsd_triage 2015-03-15 20:15:38 UTC
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
Comment 94 commit-hook freebsd_committer freebsd_triage 2015-03-15 20:17:40 UTC
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
Comment 95 commit-hook freebsd_committer freebsd_triage 2015-03-15 20:18:41 UTC
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
Comment 96 commit-hook freebsd_committer freebsd_triage 2015-03-15 20:19:43 UTC
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
Comment 97 commit-hook freebsd_committer freebsd_triage 2015-03-15 20:20:44 UTC
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
Comment 98 commit-hook freebsd_committer freebsd_triage 2015-03-15 20:21:45 UTC
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
Comment 99 commit-hook freebsd_committer freebsd_triage 2015-03-15 20:21:47 UTC
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
Comment 100 commit-hook freebsd_committer freebsd_triage 2015-03-15 20:22:48 UTC
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
Comment 101 commit-hook freebsd_committer freebsd_triage 2015-03-15 20:24:50 UTC
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
Comment 102 commit-hook freebsd_committer freebsd_triage 2015-03-15 20:29:52 UTC
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
Comment 103 commit-hook freebsd_committer freebsd_triage 2015-03-15 20:30:53 UTC
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
Comment 104 commit-hook freebsd_committer freebsd_triage 2015-03-15 20:31:55 UTC
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
Comment 105 commit-hook freebsd_committer freebsd_triage 2015-03-15 20:32:56 UTC
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
Comment 106 commit-hook freebsd_committer freebsd_triage 2015-03-15 20:33:58 UTC
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
Comment 107 commit-hook freebsd_committer freebsd_triage 2015-03-15 20:35:01 UTC
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
Comment 108 commit-hook freebsd_committer freebsd_triage 2015-03-15 20:36:02 UTC
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
Comment 109 commit-hook freebsd_committer freebsd_triage 2015-03-15 20:41:04 UTC
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
Comment 110 commit-hook freebsd_committer freebsd_triage 2015-03-15 20:41:06 UTC
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
Comment 111 commit-hook freebsd_committer freebsd_triage 2015-03-15 20:42:07 UTC
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
Comment 112 commit-hook freebsd_committer freebsd_triage 2015-03-15 20:43:09 UTC
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
Comment 113 commit-hook freebsd_committer freebsd_triage 2015-03-15 20:44:10 UTC
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
Comment 114 commit-hook freebsd_committer freebsd_triage 2015-03-15 20:44:12 UTC
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
Comment 115 commit-hook freebsd_committer freebsd_triage 2015-03-15 20:45:13 UTC
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
Comment 116 commit-hook freebsd_committer freebsd_triage 2015-03-15 20:46:15 UTC
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
Comment 117 commit-hook freebsd_committer freebsd_triage 2015-03-15 20:47:16 UTC
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
Comment 118 commit-hook freebsd_committer freebsd_triage 2015-03-15 20:48:18 UTC
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
Comment 119 commit-hook freebsd_committer freebsd_triage 2015-03-15 20:49:19 UTC
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
Comment 120 commit-hook freebsd_committer freebsd_triage 2015-03-15 20:51:21 UTC
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
Comment 121 commit-hook freebsd_committer freebsd_triage 2015-03-15 20:51:22 UTC
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
Comment 122 commit-hook freebsd_committer freebsd_triage 2015-03-15 20:52:24 UTC
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
Comment 123 commit-hook freebsd_committer freebsd_triage 2015-03-15 20:53:25 UTC
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
Comment 124 commit-hook freebsd_committer freebsd_triage 2015-03-15 20:54:27 UTC
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
Comment 125 commit-hook freebsd_committer freebsd_triage 2015-03-15 20:54:28 UTC
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
Comment 126 commit-hook freebsd_committer freebsd_triage 2015-03-15 20:55:30 UTC
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
Comment 127 commit-hook freebsd_committer freebsd_triage 2015-03-15 20:55:31 UTC
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
Comment 128 commit-hook freebsd_committer freebsd_triage 2015-03-15 21:03:33 UTC
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
Comment 129 commit-hook freebsd_committer freebsd_triage 2015-03-15 21:04:34 UTC
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
Comment 130 commit-hook freebsd_committer freebsd_triage 2015-03-15 21:05:36 UTC
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
Comment 131 commit-hook freebsd_committer freebsd_triage 2015-03-15 21:06:37 UTC
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
Comment 132 commit-hook freebsd_committer freebsd_triage 2015-03-15 21:07:39 UTC
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
Comment 133 commit-hook freebsd_committer freebsd_triage 2015-03-15 21:08:40 UTC
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
Comment 134 commit-hook freebsd_committer freebsd_triage 2015-03-15 21:08:42 UTC
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
Comment 135 commit-hook freebsd_committer freebsd_triage 2015-03-15 21:09:43 UTC
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
Comment 136 commit-hook freebsd_committer freebsd_triage 2015-03-15 21:09:45 UTC
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
Comment 137 commit-hook freebsd_committer freebsd_triage 2015-03-15 21:11:46 UTC
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
Comment 138 commit-hook freebsd_committer freebsd_triage 2015-03-15 21:12:48 UTC
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
Comment 139 commit-hook freebsd_committer freebsd_triage 2015-03-15 21:13:49 UTC
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
Comment 140 commit-hook freebsd_committer freebsd_triage 2015-03-15 21:17:51 UTC
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
Comment 141 commit-hook freebsd_committer freebsd_triage 2015-03-15 21:18:53 UTC
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
Comment 142 commit-hook freebsd_committer freebsd_triage 2015-03-15 21:18:54 UTC
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
Comment 143 commit-hook freebsd_committer freebsd_triage 2015-03-15 21:19:56 UTC
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
Comment 144 commit-hook freebsd_committer freebsd_triage 2015-03-15 21:19:57 UTC
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
Comment 145 commit-hook freebsd_committer freebsd_triage 2015-03-15 21:21:59 UTC
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
Comment 146 commit-hook freebsd_committer freebsd_triage 2015-03-15 21:23:00 UTC
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
Comment 147 commit-hook freebsd_committer freebsd_triage 2015-03-15 21:24:02 UTC
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
Comment 148 commit-hook freebsd_committer freebsd_triage 2015-03-15 21:25:03 UTC
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
Comment 149 commit-hook freebsd_committer freebsd_triage 2015-03-15 21:26:05 UTC
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
Comment 150 commit-hook freebsd_committer freebsd_triage 2015-03-15 21:27:06 UTC
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
Comment 151 commit-hook freebsd_committer freebsd_triage 2015-03-15 21:27:08 UTC
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
Comment 152 commit-hook freebsd_committer freebsd_triage 2015-03-15 21:28:09 UTC
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
Comment 153 commit-hook freebsd_committer freebsd_triage 2015-03-15 21:30:11 UTC
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
Comment 154 commit-hook freebsd_committer freebsd_triage 2015-03-15 21:30:12 UTC
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
Comment 155 commit-hook freebsd_committer freebsd_triage 2015-03-15 21:31:14 UTC
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
Comment 156 commit-hook freebsd_committer freebsd_triage 2015-03-15 21:32:15 UTC
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
Comment 157 Adrian Chadd freebsd_committer freebsd_triage 2015-03-15 21:33:26 UTC
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
Comment 158 Andriy Voskoboinyk freebsd_committer freebsd_triage 2015-04-08 06:41:32 UTC
Created attachment 155332 [details]
Fix buffer overflow (unbreaks 802.11a capable NICs)
Comment 159 Andriy Voskoboinyk freebsd_committer freebsd_triage 2015-04-08 06:43:15 UTC
Created attachment 155333 [details]
Do not access peripheral before clock stabilization
Comment 160 commit-hook freebsd_committer freebsd_triage 2015-04-09 04:51:53 UTC
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
Comment 161 commit-hook freebsd_committer freebsd_triage 2015-04-09 04:56:55 UTC
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
Comment 162 Andriy Voskoboinyk freebsd_committer freebsd_triage 2015-04-30 20:35:05 UTC
Created attachment 156164 [details]
Retry twice on the same rate (works as intended in wpi_tx_done())
Comment 163 Andriy Voskoboinyk freebsd_committer freebsd_triage 2015-04-30 20:37:30 UTC
Created attachment 156165 [details]
Remove no-op flags cleanup
Comment 164 Andriy Voskoboinyk freebsd_committer freebsd_triage 2015-04-30 20:42:09 UTC
Created attachment 156166 [details]
Add a few local variables to improve readability
Comment 165 Andriy Voskoboinyk freebsd_committer freebsd_triage 2015-04-30 20:44:25 UTC
Created attachment 156167 [details]
Remove workaround for bug 199676
Comment 166 Andriy Voskoboinyk freebsd_committer freebsd_triage 2015-04-30 20:47:30 UTC
Created attachment 156168 [details]
Fix KASSERT statements in if_wpi_debug.h
Comment 167 Andriy Voskoboinyk freebsd_committer freebsd_triage 2015-04-30 20:52:20 UTC
Created attachment 156169 [details]
Add wpi_check_bss_filter()
Comment 168 Andriy Voskoboinyk freebsd_committer freebsd_triage 2015-04-30 20:55:30 UTC
Created attachment 156170 [details]
Remove unneeded endianness conversion
Comment 169 Andriy Voskoboinyk freebsd_committer freebsd_triage 2015-04-30 20:57:32 UTC
Created attachment 156171 [details]
Use another workaround for scanning
Comment 170 Andriy Voskoboinyk freebsd_committer freebsd_triage 2015-04-30 20:59:35 UTC
Created attachment 156172 [details]
Move radiooff_task to the internal taskqueue
Comment 171 Andriy Voskoboinyk freebsd_committer freebsd_triage 2015-04-30 21:06:42 UTC
Created attachment 156173 [details]
Add TX status codes (obtained from iwlegacy)
Comment 172 Andriy Voskoboinyk freebsd_committer freebsd_triage 2015-04-30 21:08:51 UTC
Created attachment 156174 [details]
Turn off led when leaving RUN state
Comment 173 Andriy Voskoboinyk freebsd_committer freebsd_triage 2015-04-30 21:11:04 UTC
Created attachment 156175 [details]
Fix active/passive dwell calculation
Comment 174 Andriy Voskoboinyk freebsd_committer freebsd_triage 2015-04-30 21:14:18 UTC
Created attachment 156176 [details]
Fix pause scan time calculation (the remainder must be less than beacon interval)
Comment 175 Andriy Voskoboinyk freebsd_committer freebsd_triage 2015-04-30 21:17:10 UTC
Created attachment 156177 [details]
Do not disable beacon notifications (unbreaks scanning on passive channels)
Comment 176 Adrian Chadd freebsd_committer freebsd_triage 2015-04-30 21:18:04 UTC
Would you please open a new ticket? This one is getting a bit long.. :)

Thanks!
Comment 177 Andriy Voskoboinyk freebsd_committer freebsd_triage 2015-04-30 21:19:32 UTC
Created attachment 156178 [details]
Check channels which are passed in IBSS mode
Comment 178 Andriy Voskoboinyk freebsd_committer freebsd_triage 2015-04-30 21:21:04 UTC
Created attachment 156179 [details]
Unbreak scanning after RUN -> SCAN state transition.
Comment 179 Andriy Voskoboinyk freebsd_committer freebsd_triage 2015-04-30 21:22:49 UTC
Created attachment 156180 [details]
Create another debug category for WPI_BEACON_MISSED notification
Comment 180 Andriy Voskoboinyk freebsd_committer freebsd_triage 2015-04-30 21:25:45 UTC
Created attachment 156181 [details]
Improve beacon miss detection
Comment 181 Andriy Voskoboinyk freebsd_committer freebsd_triage 2015-04-30 21:28:55 UTC
Created attachment 156182 [details]
Limit minimum threshold of missed beacons
Comment 182 Andriy Voskoboinyk freebsd_committer freebsd_triage 2015-04-30 21:33:53 UTC
Created attachment 156183 [details]
Display more information for beacon miss debugging
Comment 183 Andriy Voskoboinyk freebsd_committer freebsd_triage 2015-04-30 21:35:36 UTC
Created attachment 156184 [details]
Add comment about AUTH -> AUTH state transition + fix some style issues
Comment 184 Andriy Voskoboinyk freebsd_committer freebsd_triage 2015-04-30 21:37:45 UTC
Created attachment 156185 [details]
Try to fix passive scanning hang on beacon miss
Comment 185 Andriy Voskoboinyk freebsd_committer freebsd_triage 2015-04-30 21:40:35 UTC
Created attachment 156186 [details]
Add debug output for WPI_BEACON_SENT event
Comment 186 Andriy Voskoboinyk freebsd_committer freebsd_triage 2015-04-30 21:43:00 UTC
Created attachment 156187 [details]
Fix sequence number generation for beacon frames
Comment 187 Andriy Voskoboinyk freebsd_committer freebsd_triage 2015-04-30 21:46:16 UTC
Created attachment 156188 [details]
Do not include WPI_START_SCAN event processing into non-debug builds
Comment 188 Andriy Voskoboinyk freebsd_committer freebsd_triage 2015-04-30 21:50:16 UTC
Created attachment 156189 [details]
Use nitems() for counting elements in arrays
Comment 189 Andriy Voskoboinyk freebsd_committer freebsd_triage 2015-04-30 21:52:47 UTC
Created attachment 156190 [details]
[iwn?] Fix memory leak in wpi_reset_tx_ring()
Comment 190 Andriy Voskoboinyk freebsd_committer freebsd_triage 2015-04-30 21:54:30 UTC
Created attachment 156191 [details]
Fix warning about comparison of integers of different signs
Comment 191 Andriy Voskoboinyk freebsd_committer freebsd_triage 2015-04-30 21:56:49 UTC
Created attachment 156192 [details]
[iwn?] Use correct sequence numbers with non-QoS STAs
Comment 192 Andriy Voskoboinyk freebsd_committer freebsd_triage 2015-04-30 21:58:42 UTC
Created attachment 156193 [details]
Fix various powersave races + optimize tx/rx pointer update when powersave is off
Comment 193 Andriy Voskoboinyk freebsd_committer freebsd_triage 2015-04-30 22:02:31 UTC
Created attachment 156194 [details]
Handle properly IBSS merges (works with patch from bug 199632)
Comment 194 Andriy Voskoboinyk freebsd_committer freebsd_triage 2015-04-30 22:05:56 UTC
Created attachment 156195 [details]
[iwn] Do not filter control frames in monitor mode
Comment 195 Adrian Chadd freebsd_committer freebsd_triage 2015-05-03 20:52:44 UTC
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!
Comment 196 commit-hook freebsd_committer freebsd_triage 2015-05-03 22:14:28 UTC
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
Comment 197 commit-hook freebsd_committer freebsd_triage 2015-05-03 22:30:33 UTC
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
Comment 198 commit-hook freebsd_committer freebsd_triage 2015-05-03 22:33:34 UTC
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
Comment 199 commit-hook freebsd_committer freebsd_triage 2015-05-03 22:34:36 UTC
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
Comment 200 Adrian Chadd freebsd_committer freebsd_triage 2015-05-03 22:36:22 UTC
(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.
Comment 201 commit-hook freebsd_committer freebsd_triage 2015-05-03 22:44:38 UTC
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
Comment 202 commit-hook freebsd_committer freebsd_triage 2015-05-03 22:47:40 UTC
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
Comment 203 commit-hook freebsd_committer freebsd_triage 2015-05-03 22:50:41 UTC
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
Comment 204 commit-hook freebsd_committer freebsd_triage 2015-05-03 22:55:43 UTC
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
Comment 205 commit-hook freebsd_committer freebsd_triage 2015-05-03 22:56:45 UTC
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
Comment 206 commit-hook freebsd_committer freebsd_triage 2015-05-03 23:03:47 UTC
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
Comment 207 commit-hook freebsd_committer freebsd_triage 2015-05-03 23:06:49 UTC
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
Comment 208 commit-hook freebsd_committer freebsd_triage 2015-05-03 23:08:50 UTC
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
Comment 209 commit-hook freebsd_committer freebsd_triage 2015-05-03 23:09:52 UTC
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
Comment 210 commit-hook freebsd_committer freebsd_triage 2015-05-03 23:21:54 UTC
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
Comment 211 commit-hook freebsd_committer freebsd_triage 2015-05-03 23:24:56 UTC
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
Comment 212 commit-hook freebsd_committer freebsd_triage 2015-05-03 23:25:57 UTC
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
Comment 213 commit-hook freebsd_committer freebsd_triage 2015-05-03 23:27:59 UTC
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
Comment 214 commit-hook freebsd_committer freebsd_triage 2015-05-03 23:29:01 UTC
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
Comment 215 commit-hook freebsd_committer freebsd_triage 2015-05-03 23:31:03 UTC
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
Comment 216 commit-hook freebsd_committer freebsd_triage 2015-05-03 23:35:05 UTC
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
Comment 217 commit-hook freebsd_committer freebsd_triage 2015-05-03 23:36:07 UTC
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
Comment 218 commit-hook freebsd_committer freebsd_triage 2015-05-03 23:36:08 UTC
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
Comment 219 commit-hook freebsd_committer freebsd_triage 2015-05-03 23:37:10 UTC
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
Comment 220 commit-hook freebsd_committer freebsd_triage 2015-05-03 23:38:11 UTC
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
Comment 221 commit-hook freebsd_committer freebsd_triage 2015-05-03 23:39:13 UTC
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
Comment 222 commit-hook freebsd_committer freebsd_triage 2015-05-03 23:39:14 UTC
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
Comment 223 commit-hook freebsd_committer freebsd_triage 2015-05-03 23:40:16 UTC
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
Comment 224 commit-hook freebsd_committer freebsd_triage 2015-05-03 23:40:17 UTC
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
Comment 225 Adrian Chadd freebsd_committer freebsd_triage 2015-05-04 00:25:43 UTC
Done and done. :)

please open a new ticket if you have more patches!