Iwlwifi missed beacons and random disconnects

First, I have to admit that this is something that started a few months ago, but I never got around to trying to fix it until now.

inxi -Na output:

Network:
  Device-1: Intel Ethernet I219-V vendor: Gigabyte driver: e1000e v: kernel
    port: N/A bus-ID: 00:1f.6 chip-ID: 8086:15bc class-ID: 0200
  Device-2: Intel Wireless 8260 driver: iwlwifi v: kernel pcie: gen: 1
    speed: 2.5 GT/s lanes: 1 bus-ID: 04:00.0 chip-ID: 8086:24f3 class-ID: 0280

dmesg | grep iwlwifi (excluding the line containing the MAC address):

[    8.394165] iwlwifi 0000:04:00.0: enabling device (0000 -> 0002)
[    8.395679] iwlwifi 0000:04:00.0: Detected crf-id 0xbadcafe, cnv-id 0x3000000 wfpm id 0x80000000
[    8.395688] iwlwifi 0000:04:00.0: PCI dev 24f3/0010, rev=0x201, rfid=0xd55555d5
[    8.395691] iwlwifi 0000:04:00.0: Detected Intel(R) Dual Band Wireless-AC 8260
[    8.408913] iwlwifi 0000:04:00.0: loaded firmware version 36.c8e8e144.0 8000C-36.ucode op_mode iwlmvm

I first noticed that my Internet connection was abnormally slow. Later, I tried to update, and eos-update would randomly fail with a terminal full of “less than 1 byte/sec” errors from multiple mirrors at the same time. Then I noticed that dmesg was filled with these missed_beacons errors:

[  743.487932] iwlwifi 0000:04:00.0: missed beacons exceeds threshold, but receiving data. Stay connected, Expect bugs.
[  743.487945] iwlwifi 0000:04:00.0: missed_beacons:19, missed_beacons_since_rx:1
[  743.590341] iwlwifi 0000:04:00.0: missed beacons exceeds threshold, but receiving data. Stay connected, Expect bugs.
[  743.590352] iwlwifi 0000:04:00.0: missed_beacons:20, missed_beacons_since_rx:2
[  743.692752] iwlwifi 0000:04:00.0: missed beacons exceeds threshold, but receiving data. Stay connected, Expect bugs.
[  743.692764] iwlwifi 0000:04:00.0: missed_beacons:21, missed_beacons_since_rx:1
[  743.795141] iwlwifi 0000:04:00.0: missed beacons exceeds threshold, but receiving data. Stay connected, Expect bugs.
[  743.795152] iwlwifi 0000:04:00.0: missed_beacons:22, missed_beacons_since_rx:1
[  743.897530] iwlwifi 0000:04:00.0: missed beacons exceeds threshold, but receiving data. Stay connected, Expect bugs.
[  743.897541] iwlwifi 0000:04:00.0: missed_beacons:23, missed_beacons_since_rx:1
[  743.999936] iwlwifi 0000:04:00.0: missed beacons exceeds threshold, but receiving data. Stay connected, Expect bugs.
[  743.999947] iwlwifi 0000:04:00.0: missed_beacons:24, missed_beacons_since_rx:1
[  744.102349] iwlwifi 0000:04:00.0: missed beacons exceeds threshold, but receiving data. Stay connected, Expect bugs.
[  744.102360] iwlwifi 0000:04:00.0: missed_beacons:25, missed_beacons_since_rx:2
[  744.204766] iwlwifi 0000:04:00.0: missed beacons exceeds threshold, but receiving data. Stay connected, Expect bugs.
[  744.204777] iwlwifi 0000:04:00.0: missed_beacons:26, missed_beacons_since_rx:1
[  744.307127] iwlwifi 0000:04:00.0: missed beacons exceeds threshold, but receiving data. Stay connected, Expect bugs.
[  744.307139] iwlwifi 0000:04:00.0: missed_beacons:27, missed_beacons_since_rx:2

I wasn’t seeing random disconnects immediately, but a few weeks ago, I started seeing the KDE network notifications. There’s an “authorization supplicant timed out” notification at the same time as the disconnect notification.

So far, I’ve tried the 11n_disable option (following along with this thread, where their problem started at the same time as mine), but setting it to either 1 or 8 didn’t help. I haven’t tried the swcrypto option yet, but I’m going to try it right after posting. It looks like power saving is disabled by default.

How much else is there to try?

Have you tried creating the file /etc/modprobe.d/iwlwifi.conf and add

options iwlwifi power_save=0

Save and reboot. See if that makes any difference.

That didn’t change anything (noting that I left 11n_disable=1 in iwlwifi.conf).

Setting swcrypto=1 gave me the same warning that you had in the other thread.

I know that chip can be problematic sometimes and it may be a firmware version issue.

The power_save=0 option actually did help. I was still seeing missed beacons in dmesg, but the connection was faster and didn’t disconnect randomly. I was able to run eos-update and have it download all packages successfully the first time. After restarting, the missed beacons were gone. I even removed 11n_disable from iwlwifi.conf, and it’s still working.

I do seem to have a lot of problems with Intel hardware (especially integrated graphics performance) in Linux. Maybe I should make a thread about that since this got fixed so quickly.

I would just mark the post that solved it as the solution.

I got one more “missed beacons” error in dmesg after I made that last post, but I haven’t had any disconnects. Considering how problematic these cards appear to be, that’s probably good enough.

It’s a little strange to see the huge number of complaints around the Internet considering how common Intel WiFi cards are. I’m also using an old 802.11n ISP-provided gateway (2.4GHz and 150Mbps only), which doesn’t help.

With Intel’s problems of late, they laid off loads of their developers. These kinds of issues seemed kind of inevitable when the announcements came down the pipe. The Linux driver support team seemed particularly hard hit by the cuts, so not particularly surprising in my view.