Eric, Once again, thanks for looking into this, and sorry for being slow. Here are the results for 4.13-rc3 kernel using BBR congestion control:
kir@kd:~/wifiperf/4.13-rc3/2$ cat results limit = max(2 * skb->truesize, sk->sk_pacing_rate >> 10); min 7.64 max 17.30 avg 13.92 num 40 limit = max(2 * skb->truesize, sk->sk_pacing_rate >> 6); min 52.20 max 95.90 avg 73.25 num 40 limit = max(2 * skb->truesize, sk->sk_pacing_rate >> 7); min 17.20 max 94.80 avg 57.54 num 40 limit = max(2 * skb->truesize, sk->sk_pacing_rate >> 8); min 19.00 max 80.40 avg 65.97 num 40 limit = max(4 * skb->truesize, sk->sk_pacing_rate >> 7); min 53.30 max 92.50 avg 69.37 num 40 limit = max(4 * skb->truesize, sk->sk_pacing_rate >> 8); min 38.40 max 84.20 avg 61.54 num 40 There is not much difference in throughput (unless with default values), maybe the reason is absolute numbers are slow (my T440s wifi is about twice as fast), so there is something else involved. Do you need to test for cubic cc? -- You received this bug notification because you are a member of Kernel Packages, which is subscribed to linux in Ubuntu. https://bugs.launchpad.net/bugs/1670041 Title: Poor performance of Atheros QCA6174 802.11ac (rev 32) (Killer Wireless 1535) Status in linux package in Ubuntu: In Progress Status in linux source package in Zesty: In Progress Bug description: Update (2017-05-20): Kalle Valo suggested a hack which increased client -> AP TCP performance - so it does not look like a firmware issue as I thought originally, rather an ath10k driver issue: https://bugs.launchpad.net/ubuntu/+source/linux/+bug/1670041/comments/11 https://patchwork.kernel.org/patch/5784701/ (the hack is at the bottom) Tested here: https://bugs.launchpad.net/ubuntu/+source/linux/+bug/1670041/comments/17 Update: added some forensics in the paste (a long read): http://paste.ubuntu.com/24118478/ ----- 3b:00.0 Network controller: Qualcomm Atheros QCA6174 802.11ac Wireless Network Adapter (rev 32) qca6174 hw3.2 target 0x05030000 chip_id 0x00340aff sub 1a56:1535 Original message: ------ I experience a very poor 802.11ac performance of a QCA6174 Wireless card (Killer Wireless 1535). This is a dev version of Zesty with a recently released 4.10 kernel: uname -r 4.10.0-9-generic dpkg -l linux-firmware | grep ii ii linux-firmware 1.163 all Firmware for Linux kernel drivers lspci -vvv: ... 3b:00.0 Network controller: Qualcomm Atheros QCA6174 802.11ac Wireless Network Adapter (rev 32) Subsystem: Bigfoot Networks, Inc. QCA6174 802.11ac Wireless Network Adapter Control: I/O- Mem+ BusMaster+ SpecCycle- MemWINV- VGASnoop- ParErr- Stepping- SERR- FastB2B- DisINTx+ Status: Cap+ 66MHz- UDF- FastB2B- ParErr- DEVSEL=fast >TAbort- <TAbort- <MAbort- >SERR- <PERR- INTx- Latency: 0, Cache Line Size: 64 bytes Interrupt: pin A routed to IRQ 334 Region 0: Memory at dd200000 (64-bit, non-prefetchable) [size=2M] Capabilities: <access denied> Kernel driver in use: ath10k_pci Kernel modules: ath10k_pci ----------------------------------------- Testing wireless speed with RT-87U 802.11ac router shows that the speed is only 27.3 megabits per second which is very low for an 802.11ac card: iperf -c rtr ------------------------------------------------------------ Client connecting to rtr, TCP port 5001 TCP window size: 85.0 KByte (default) ------------------------------------------------------------ [ 3] local 10.10.10.78 port 48930 connected with 10.10.10.1 port 5001 [ ID] Interval Transfer Bandwidth [ 3] 0.0-10.0 sec 32.6 MBytes 27.3 Mbits/sec ------------------------------------ For comparison, on the same network (from the same distance to the router) I have the following result with an Intel's card (on a 4.8 kernel, different laptop): UX32LN:~$ lspci | grep 7260 02:00.0 Network controller: Intel Corporation Wireless 7260 (rev bb) UX32LN:~$ iperf -c rtr ------------------------------------------------------------ Client connecting to rtr, TCP port 5001 TCP window size: 85.0 KByte (default) ------------------------------------------------------------ [ 3] local 10.10.10.208 port 37196 connected with 10.10.10.1 port 5001 [ ID] Interval Transfer Bandwidth [ 3] 0.0-10.1 sec 237 MBytes 198 Mbits/sec administrator@UX32LN:~$ lsp lspci lspcmcia lspgpot 200 Mbps is much better. ----------------------------------- Back to the problematic card: Booted 16.04.2 with the rolling HWE kernel 4.8: journalctl -k | grep -i ath Mar 04 18:28:31 ubuntu kernel: ath10k_pci 0000:3b:00.0: enabling device (0000 -> 0002) Mar 04 18:28:31 ubuntu kernel: ath10k_pci 0000:3b:00.0: pci irq msi oper_irq_mode 2 irq_mode 0 reset_mode 0 Mar 04 18:28:31 ubuntu kernel: ath10k_pci 0000:3b:00.0: Direct firmware load for ath10k/pre-cal-pci-0000:3b:00.0.bin failed with error -2 Mar 04 18:28:31 ubuntu kernel: ath10k_pci 0000:3b:00.0: Direct firmware load for ath10k/cal-pci-0000:3b:00.0.bin failed with error -2 Mar 04 18:28:31 ubuntu kernel: ath10k_pci 0000:3b:00.0: Direct firmware load for ath10k/QCA6174/hw3.0/firmware-5.bin failed with error -2 Mar 04 18:28:31 ubuntu kernel: ath10k_pci 0000:3b:00.0: could not fetch firmware file 'ath10k/QCA6174/hw3.0/firmware-5.bin': -2 Mar 04 18:28:31 ubuntu kernel: ath10k_pci 0000:3b:00.0: qca6174 hw3.2 target 0x05030000 chip_id 0x00340aff sub 1a56:1535 Mar 04 18:28:31 ubuntu kernel: ath10k_pci 0000:3b:00.0: kconfig debug 0 debugfs 1 tracing 1 dfs 0 testmode 0 Mar 04 18:28:31 ubuntu kernel: ath10k_pci 0000:3b:00.0: firmware ver WLAN.RM.2.0-00180-QCARMSWPZ-1 api 4 features wowlan,ignore-otp,no-4addr-pad crc32 75dee6c5 Mar 04 18:28:31 ubuntu kernel: ath10k_pci 0000:3b:00.0: board_file api 2 bmi_id N/A crc32 6fc88fe7 Mar 04 18:28:34 ubuntu kernel: ath10k_pci 0000:3b:00.0: htt-ver 3.26 wmi-op 4 htt-op 3 cal otp max-sta 32 raw 0 hwcrypto 1 Mar 04 18:28:34 ubuntu kernel: ath: EEPROM regdomain: 0x6c Mar 04 18:28:34 ubuntu kernel: ath: EEPROM indicates we should expect a direct regpair map Mar 04 18:28:34 ubuntu kernel: ath: Country alpha2 being used: 00 Mar 04 18:28:34 ubuntu kernel: ath: Regpair used: 0x6c Mar 04 18:28:34 ubuntu kernel: ath10k_pci 0000:3b:00.0 wlp59s0: renamed from wlan0 iperf -c 10.10.10.1 ------------------------------------------------------------ Client connecting to 10.10.10.1, TCP port 5001 TCP window size: 85.0 KByte (default) ------------------------------------------------------------ [ 3] local 10.10.10.78 port 43786 connected with 10.10.10.1 port 5001 [ ID] Interval Transfer Bandwidth [ 3] 0.0-10.0 sec 43.0 MBytes 36.0 Mbits/sec -------------------------------- Booted on 4.4 General Availability kernel - the card did not work at all: Mar 04 18:51:54 ubuntu kernel: ath10k_pci 0000:3b:00.0: failed to enable dynamic BW: -11 Mar 04 18:52:00 ubuntu kernel: ath10k_pci 0000:3b:00.0: could not suspend target (-11) -------------------------------- The card's product name is Killer Wireless-AC 1535: http://www.killernetworking.com/products/killer-wireless-ac-1535 The card vendor refers to linux-firmware 1.163: http://www.killernetworking.com/driver-downloads/knowledge-base?view=topic&id=2 --------------------------------- I tend to blame Atheros firmware so I've tried whatever kvalo has in the ath10k-firmware https://github.com/kvalo/ath10k-firmware sudo rmmod ath10k_pci ath10k_core ath mac80211 cfg80211 # this gets rid of some of the kernel warnings about firmware but the performance remains low sudo cp ath10k- firmware/QCA6174/hw3.0/firmware-4.bin_WLAN.RM.2.0-00180-QCARMSWPZ-1 /lib/firmware/ath10k/QCA6174/hw3.0/firmware-5.bin sudo cp ath10k-firmware/QCA6174/hw3.0/board-2.bin /lib/firmware/ath10k/QCA6174/hw3.0/board-2.bin sudo modprobe -a ath10k_pci ath10k_core ath mac80211 cfg80211 ---------------------------------- Tried both 5.0 GHz and 2.4 GHz modes - got similar results. ---------------------------------- ProblemType: Bug DistroRelease: Ubuntu 17.04 Package: linux-image-4.10.0-9-generic 4.10.0-9.11 ProcVersionSignature: Ubuntu 4.10.0-9.11-generic 4.10.0 Uname: Linux 4.10.0-9-generic x86_64 NonfreeKernelModules: nvidia_uvm nvidia_drm nvidia_modeset nvidia ApportVersion: 2.20.4-0ubuntu2 Architecture: amd64 AudioDevicesInUse: USER PID ACCESS COMMAND /dev/snd/controlC0: dima 3458 F.... pulseaudio /dev/snd/controlC1: dima 3458 F.... pulseaudio CurrentDesktop: Unity:Unity7 Date: Sat Mar 4 22:03:00 2017 InstallationDate: Installed on 2017-02-27 (5 days ago) InstallationMedia: Ubuntu 17.04 "Zesty Zapus" - Alpha amd64 (20170227) MachineType: Razer Blade ProcFB: 0 inteldrmfb ProcKernelCmdLine: BOOT_IMAGE=/vmlinuz-4.10.0-9-generic.efi.signed root=UUID=3f515c94-cd91-48b4-80f6-84ec24cb7b8f ro rootflags=subvol=@ quiet button.lid_init_state=open pcie_aspm=off RelatedPackageVersions: linux-restricted-modules-4.10.0-9-generic N/A linux-backports-modules-4.10.0-9-generic N/A linux-firmware 1.163 SourcePackage: linux UpgradeStatus: No upgrade log present (probably fresh install) dmi.bios.date: 01/10/2017 dmi.bios.vendor: Razer dmi.bios.version: 1.00 dmi.board.name: Razer dmi.board.vendor: Razer dmi.chassis.type: 9 dmi.chassis.vendor: Razer dmi.modalias: dmi:bvnRazer:bvr1.00:bd01/10/2017:svnRazer:pnBlade:pvr6.06:rvnRazer:rnRazer:rvr:cvnRazer:ct9:cvr: dmi.product.name: Blade dmi.product.version: 6.06 dmi.sys.vendor: Razer To manage notifications about this bug go to: https://bugs.launchpad.net/ubuntu/+source/linux/+bug/1670041/+subscriptions -- Mailing list: https://launchpad.net/~kernel-packages Post to : kernel-packages@lists.launchpad.net Unsubscribe : https://launchpad.net/~kernel-packages More help : https://help.launchpad.net/ListHelp