Slow wireless and frequent disconnections on iwm

I'm having a slew of issues with iwm() WiFi on my Dell Inspiron 5567 being slow and randomly disconnecting when the access point is far or the signal is not very strong.

In particular, I'm experiencing random connection losses when connected to public WiFis with multiple access points (I've configured wpa_supplicant for both encrypted and unencrypted networks); the network is also generally much slower under FreeBSD than under Linux/Windows when using the same adapter, which I'm currently mitigating using USB tethering with an Android phone connected to the same networks, which results in a vastly more stable connection.

I noticed that dmesg is full of the following errors, which I think are associated with the disconnection episodes:

Code:
wlan0: link state changed to DOWN
iwm0: dumping device error log
iwm0: Start Error Log Dump:
iwm0: Status: 0x3, count: 6
iwm0: 0x00003001 | ADVANCED_SYSASSERT        
iwm0: 002002A0 | trm_hw_status0
iwm0: 00000000 | trm_hw_status1
iwm0: 00043850 | branchlink2
iwm0: 0004A5E8 | interruptlink1
iwm0: 00000000 | interruptlink2
iwm0: 00000001 | data1
iwm0: 00000000 | data2
iwm0: DEADBEEF | data3
iwm0: 003F9A39 | beacon time
iwm0: 0000690E | tsf low
iwm0: 00000000 | tsf hi
iwm0: 00000000 | time gp1
iwm0: 0000690F | time gp2
iwm0: 00000000 | uCode revision type
iwm0: 00000016 | uCode version major
iwm0: 00058404 | uCode version minor
iwm0: 00000210 | hw version
iwm0: 00809000 | board version
iwm0: 092B002B | hcmd
iwm0: 00022082 | isr0
iwm0: 00000000 | isr1
iwm0: 00000002 | isr2
iwm0: 0041F4C0 | isr3
iwm0: 00000000 | isr4
iwm0: 01000112 | last cmd Id
iwm0: 00000000 | wait_event
iwm0: 000000D4 | l2p_control
iwm0: 00018020 | l2p_duration
iwm0: 00000007 | l2p_mhvalid
iwm0: 00000081 | l2p_addr_match
iwm0: 00000005 | lmpm_pmg_sel
iwm0: 03071928 | timestamp
iwm0: 00003040 | flow_handler
iwm0: driver status:
iwm0:   tx ring  0: qid=0  cur=1   queued=1
iwm0:   tx ring  1: qid=1  cur=0   queued=0
iwm0:   tx ring  2: qid=2  cur=0   queued=0
iwm0:   tx ring  3: qid=3  cur=0   queued=0
iwm0:   tx ring  4: qid=4  cur=0   queued=0
iwm0:   tx ring  5: qid=5  cur=0   queued=0
iwm0:   tx ring  6: qid=6  cur=0   queued=0
iwm0:   tx ring  7: qid=7  cur=0   queued=0
iwm0:   tx ring  8: qid=8  cur=0   queued=0
iwm0:   tx ring  9: qid=9  cur=44  queued=1
iwm0:   tx ring 10: qid=10 cur=0   queued=0
iwm0:   tx ring 11: qid=11 cur=0   queued=0
iwm0:   tx ring 12: qid=12 cur=0   queued=0
iwm0:   tx ring 13: qid=13 cur=0   queued=0
iwm0:   tx ring 14: qid=14 cur=0   queued=0
iwm0:   tx ring 15: qid=15 cur=0   queued=0
iwm0:   tx ring 16: qid=16 cur=0   queued=0
iwm0:   tx ring 17: qid=17 cur=0   queued=0
iwm0:   tx ring 18: qid=18 cur=0   queued=0
iwm0:   tx ring 19: qid=19 cur=0   queued=0
iwm0:   tx ring 20: qid=20 cur=0   queued=0
iwm0:   tx ring 21: qid=21 cur=0   queued=0
iwm0:   tx ring 22: qid=22 cur=0   queued=0
iwm0:   tx ring 23: qid=23 cur=0   queued=0
iwm0:   tx ring 24: qid=24 cur=0   queued=0
iwm0:   tx ring 25: qid=25 cur=0   queued=0
iwm0:   tx ring 26: qid=26 cur=0   queued=0
iwm0:   tx ring 27: qid=27 cur=0   queued=0
iwm0:   tx ring 28: qid=28 cur=0   queued=0
iwm0:   tx ring 29: qid=29 cur=0   queued=0
iwm0:   tx ring 30: qid=30 cur=0   queued=0
iwm0:   rx ring: cur=53
iwm0:   802.11 state 2
iwm0: iwm_intr: controller panicked, iv_state = 2; restarting
wlan0: ieee80211_new_state_locked: pending AUTH -> ASSOC transition lost

The adapter is a Wireless AC 3165 (dual band, both 2.4 and 5GHz); I'm running on FreeBSD 12.0-p3 + binary packages.
 
Back
Top