Wifi randomly disconnects on Acer running Ubuntu GNOME 16.04.3

Asked by JK

Relevant laptop info:
- OS: Ubuntu GNOME 16.04.3 64-bit
- Kernel: 4.4.0-96-generic
- CPU: Intel i5-6200U
- Network controller: Qualcomm Atheros Device 0042 (rev 31)
- Ethernet controller: Realtek Semiconductor Co., Ltd. RTL8111/8168/8411 PCI Express Gigabit Ethernet Controller (rev 12)
- Graphics driver: i915_bpo
- Network driver: ath10k_pci
- Ethernet driver: r8169
- "pci=nomsi" added as a boot parameter in /etc/default/grub to solve a different problem (PCIe Bus Error in dmesg after an update)

Other info:
- Dump of the wireless-info script: https://pastebin.com/3Y09cjNc
- In dmesg, I regularly get errors that look like this: [drm:intel_pipe_update_end [i915_bpo]] *ERROR* Atomic update failure on pipe A (start=39063 end=39064) time 176 us, min 1073, max 1079, scanline start 1071, end 1083
- The frequency seems random - sometimes disconnects happen within minutes of each other, and other times I can go over an hour without disconnecting

What I've tried:
- Turning wifi off and on
- Updating everything and restarting
- Disabling IPv6 in Wi-Fi Settings
- Blacklisting acer_wmi in /etc/modprobe.d/blacklist.conf
- Enabling proprietary Intel driver in Additional Drivers ("microcode firmware for Intel CPUs from intel-microcode")

Thanks in advance for any help. I've tried everything I've been able to think of and any possible solutions I've been able to find on Google, but I've had no luck.

Question information

Language:
English Edit question
Status:
Solved
For:
Ubuntu Edit question
Assignee:
No assignee Edit question
Solved by:
JK
Solved:
Last query:
Last reply:
Revision history for this message
actionparsnip (andrew-woodhead666) said :
#1

What is the output of:

sudo lshw -C network; sudo iwlist scan | egrep -i 'chan|ssid'

Thanks

Revision history for this message
JK (psvmain) said :
#2

First output:
  *-network
       description: Wireless interface
       product: Qualcomm Atheros
       vendor: Qualcomm Atheros
       physical id: 0
       bus info: pci@0000:03:00.0
       logical name: wlp3s0
       version: 31
       serial: 74:df:bf:80:42:c1
       width: 64 bits
       clock: 33MHz
       capabilities: pm msi pciexpress bus_master cap_list ethernet physical wireless
       configuration: broadcast=yes driver=ath10k_pci driverversion=4.4.0-96-generic firmware=WLAN.TF.1.0-00267-1 ip=10.0.1.149 latency=0 link=yes multicast=yes wireless=IEEE 802.11abgn
       resources: irq:18 memory:94200000-943fffff
  *-network
       description: Ethernet interface
       product: RTL8111/8168/8411 PCI Express Gigabit Ethernet Controller
       vendor: Realtek Semiconductor Co., Ltd.
       physical id: 0.1
       bus info: pci@0000:04:00.1
       logical name: enp4s0f1
       version: 12
       serial: 54:ab:3a:98:1d:87
       size: 10Mbit/s
       capacity: 1Gbit/s
       width: 64 bits
       clock: 33MHz
       capabilities: pm msi pciexpress msix vpd bus_master cap_list ethernet physical tp mii 10bt 10bt-fd 100bt 100bt-fd 1000bt 1000bt-fd autonegotiation
       configuration: autonegotiation=on broadcast=yes driver=r8169 driverversion=2.3LK-NAPI duplex=half firmware=rtl8411-2_0.0.1 07/08/13 latency=0 link=no multicast=yes port=MII speed=10Mbit/s
       resources: irq:19 ioport:3000(size=256) memory:94404000-94404fff memory:94400000-94403fff

Second output:
                    Channel:7
                    Frequency:2.442 GHz (Channel 7)
                    ESSID:"My Wifi"
                    Channel:1
                    Frequency:2.412 GHz (Channel 1)
                    ESSID:"NETGEAR43"
                    Channel:1
                    Frequency:2.412 GHz (Channel 1)
                    ESSID:"NETGEAR43_2GEXT"
                    Channel:6
                    Frequency:2.437 GHz (Channel 6)
                    ESSID:"CenturyLink0350"
                    Channel:6
                    Frequency:2.437 GHz (Channel 6)
                    ESSID:""
                    Channel:6
                    Frequency:2.437 GHz (Channel 6)
                    ESSID:""
                    Channel:6
                    Frequency:2.437 GHz (Channel 6)
                    ESSID:""
                    Channel:6
                    Frequency:2.437 GHz (Channel 6)
lo Interface doesn't support scanning.

enp4s0f1 Interface doesn't support scanning.

                    ESSID:"Scheurich3386"
                    Channel:153
                    ESSID:"My Wifi"

Revision history for this message
actionparsnip (andrew-woodhead666) said :
#3

Run:

echo "options ath10k_pci nohwcrypt=1" | sudo tee /etc/modprobe.d/ath10k_fix.conf > /dev/null

reboot to test

Revision history for this message
JK (psvmain) said :
#4

Thanks for the suggestion.

I tried that but the disconnects have still happened, though. I have a script set up to log the time when a ping fails, and one of them was at 2:15:00 AM PDT. This is the output of dmesg -T leading up to and shortly after the failure:

[Wed Sep 20 02:14:53 2017] wlp3s0: authenticate with <MAC address>
[Wed Sep 20 02:14:53 2017] wlp3s0: send auth to <MAC address> (try 1/3)
[Wed Sep 20 02:14:53 2017] wlp3s0: authenticated
[Wed Sep 20 02:14:53 2017] wlp3s0: associate with <MAC address> (try 1/3)
[Wed Sep 20 02:14:53 2017] cfg80211: World regulatory domain updated:
[Wed Sep 20 02:14:53 2017] cfg80211: DFS Master region: unset
[Wed Sep 20 02:14:53 2017] cfg80211: (start_freq - end_freq @ bandwidth), (max_antenna_gain, max_eirp), (dfs_cac_time)
[Wed Sep 20 02:14:53 2017] cfg80211: (2402000 KHz - 2472000 KHz @ 40000 KHz), (N/A, 2000 mBm), (N/A)
[Wed Sep 20 02:14:53 2017] cfg80211: (2457000 KHz - 2482000 KHz @ 40000 KHz), (N/A, 2000 mBm), (N/A)
[Wed Sep 20 02:14:53 2017] cfg80211: (2474000 KHz - 2494000 KHz @ 20000 KHz), (N/A, 2000 mBm), (N/A)
[Wed Sep 20 02:14:53 2017] cfg80211: (5170000 KHz - 5250000 KHz @ 80000 KHz, 160000 KHz AUTO), (N/A, 2000 mBm), (N/A)
[Wed Sep 20 02:14:53 2017] cfg80211: (5250000 KHz - 5330000 KHz @ 80000 KHz, 160000 KHz AUTO), (N/A, 2000 mBm), (0 s)
[Wed Sep 20 02:14:53 2017] cfg80211: (5490000 KHz - 5730000 KHz @ 160000 KHz), (N/A, 2000 mBm), (0 s)
[Wed Sep 20 02:14:53 2017] cfg80211: (5735000 KHz - 5835000 KHz @ 80000 KHz), (N/A, 2000 mBm), (N/A)
[Wed Sep 20 02:14:53 2017] cfg80211: (57240000 KHz - 63720000 KHz @ 2160000 KHz), (N/A, 0 mBm), (N/A)
[Wed Sep 20 02:14:53 2017] wlp3s0: RX AssocResp from <MAC address> (capab=0x1411 status=0 aid=22)
[Wed Sep 20 02:14:53 2017] wlp3s0: associated
[Wed Sep 20 02:14:53 2017] ath: EEPROM regdomain: 0x8348
[Wed Sep 20 02:14:53 2017] ath: EEPROM indicates we should expect a country code
[Wed Sep 20 02:14:53 2017] ath: doing EEPROM country->regdmn map search
[Wed Sep 20 02:14:53 2017] ath: country maps to regdmn code: 0x3a
[Wed Sep 20 02:14:53 2017] ath: Country alpha2 being used: US
[Wed Sep 20 02:14:53 2017] ath: Regpair used: 0x3a
[Wed Sep 20 02:14:53 2017] ath: regdomain 0x8348 dynamically updated by country IE
[Wed Sep 20 02:14:53 2017] cfg80211: Regulatory domain changed to country: US
[Wed Sep 20 02:14:53 2017] cfg80211: DFS Master region: FCC
[Wed Sep 20 02:14:53 2017] cfg80211: (start_freq - end_freq @ bandwidth), (max_antenna_gain, max_eirp), (dfs_cac_time)
[Wed Sep 20 02:14:53 2017] cfg80211: (2402000 KHz - 2472000 KHz @ 40000 KHz), (N/A, 3000 mBm), (N/A)
[Wed Sep 20 02:14:53 2017] cfg80211: (5170000 KHz - 5250000 KHz @ 80000 KHz, 160000 KHz AUTO), (N/A, 1700 mBm), (N/A)
[Wed Sep 20 02:14:53 2017] cfg80211: (5250000 KHz - 5330000 KHz @ 80000 KHz, 160000 KHz AUTO), (N/A, 2300 mBm), (0 s)
[Wed Sep 20 02:14:53 2017] cfg80211: (5490000 KHz - 5730000 KHz @ 160000 KHz), (N/A, 2300 mBm), (0 s)
[Wed Sep 20 02:14:53 2017] cfg80211: (5735000 KHz - 5835000 KHz @ 80000 KHz), (N/A, 3000 mBm), (N/A)
[Wed Sep 20 02:14:53 2017] cfg80211: (57240000 KHz - 63720000 KHz @ 2160000 KHz), (N/A, 4000 mBm), (N/A)
[Wed Sep 20 02:14:53 2017] wlp3s0: Limiting TX power to 30 (30 - 0) dBm as advertised by <MAC address>
[Wed Sep 20 02:14:59 2017] wlp3s0: deauthenticating from <MAC address> by local choice (Reason: 3=DEAUTH_LEAVING)
[Wed Sep 20 02:14:59 2017] cfg80211: World regulatory domain updated:
[Wed Sep 20 02:14:59 2017] cfg80211: DFS Master region: unset
[Wed Sep 20 02:14:59 2017] cfg80211: (start_freq - end_freq @ bandwidth), (max_antenna_gain, max_eirp), (dfs_cac_time)
[Wed Sep 20 02:14:59 2017] cfg80211: (2402000 KHz - 2472000 KHz @ 40000 KHz), (N/A, 2000 mBm), (N/A)
[Wed Sep 20 02:14:59 2017] cfg80211: (2457000 KHz - 2482000 KHz @ 40000 KHz), (N/A, 2000 mBm), (N/A)
[Wed Sep 20 02:14:59 2017] cfg80211: (2474000 KHz - 2494000 KHz @ 20000 KHz), (N/A, 2000 mBm), (N/A)
[Wed Sep 20 02:14:59 2017] cfg80211: (5170000 KHz - 5250000 KHz @ 80000 KHz, 160000 KHz AUTO), (N/A, 2000 mBm), (N/A)
[Wed Sep 20 02:14:59 2017] cfg80211: (5250000 KHz - 5330000 KHz @ 80000 KHz, 160000 KHz AUTO), (N/A, 2000 mBm), (0 s)
[Wed Sep 20 02:14:59 2017] cfg80211: (5490000 KHz - 5730000 KHz @ 160000 KHz), (N/A, 2000 mBm), (0 s)
[Wed Sep 20 02:14:59 2017] cfg80211: (5735000 KHz - 5835000 KHz @ 80000 KHz), (N/A, 2000 mBm), (N/A)
[Wed Sep 20 02:14:59 2017] cfg80211: (57240000 KHz - 63720000 KHz @ 2160000 KHz), (N/A, 0 mBm), (N/A)
[Wed Sep 20 02:15:01 2017] IPv6: ADDRCONF(NETDEV_UP): wlp3s0: link is not ready
[Wed Sep 20 02:15:02 2017] [drm:intel_pipe_update_end [i915_bpo]] *ERROR* Atomic update failure on pipe A (start=43607 end=43608) time 322 us, min 1073, max 1079, scanline start 1066, end 1088
[Wed Sep 20 02:15:06 2017] ath10k_pci 0000:03:00.0: no channel configured; ignoring frame(s)!

Revision history for this message
JK (psvmain) said :
#5

To give more info on the problem background, this is a new install of Ubuntu (about 5 days old). When I first installed it, it wasn't picking up wifi, and I had to use a wired connection to run the initial updates. I've used an Ubuntu 16.04.2 live disc in the past on the same device with no wifi problems.

I booted into a live usb for vanilla Ubuntu 16.04.3, and the wifi worked fine without any disconnects. The modules present on the live usb that aren't on my installation are:
- aufs
- crypto_simd
- dm_log
- dm_mirror
- dm_region_hash
- i915
- intel_cstate
- intel_pch_thermal
- intel_rapl_perf
- isofs
- nls_iso8859_1
- nls_utf8
- pcbc
- snd_soc_sst_match

The ones present on my installation that weren't on the live usb are:
- ablk_helper
- ansi_cprng
- binfmt_misc
- ctr
- drbg
- dw_dmac_core
- gf128mul
- i915_bpo
- intel_ips
- lrw
- pci_stub
- v4l2_common
- vboxdrv
- vboxnetadp
- vboxnetflt
- vboxpci

I've also saved a copy of the live usb's /etc/modprobe.d/ directory and outputs of the following commands if they're needed:
- uname -r
- lsmod
- dmesg -T
- wireless-info

Something that caught my eye was that on the live usb, the i915 driver was installed, whereas on my installation, the backport i915_bpo was installed. I don't know how relevant it is to the problem, though. My knowledge on how modules work is very limited.

As a small side note, I've also tried disabling 802.11n by adding "options iwlwifi 11n_disable=1" in modprobe.d/iwlwifi.conf, with no success. Since posting the original problem, I've changed the boot parameter pci to noaer due to shorter boot times while having the same connection stability as nomsi.

Revision history for this message
JK (psvmain) said :
#6

I think I fixed it. The issues were likely coming from the Ubuntu GNOME installer using kernel 4.4, which caused the i915 backport to be used. I don't think the backport worked well with my laptop. To fix it, I installed the HWE kernel by running:

sudo apt-get install linux-generic-hwe-16.04

Kernel version is now 4.10.0-35-generic, dmesg output looks normal, and the i915 driver is installed. I'll reopen this if the issues turn up again, but I'm optimistic.

Revision history for this message
Jeremy (wa113y3s) said :
#7

I bet this is caused by ath10k not liking wifi power management being enabled, in terminal

sudo sed -i 's/wifi.powersave = 3/wifi.powersave = 2/' /etc/NetworkManager/conf.d/default-wifi-powersave-on.conf
systemctl restart network-manager.service