Exceptionally slow WiFi despite good signal on fresh install

Greetings. I am new to Manjaro, and before it I only have vague experience with Windows 7 and Linux Mint. Since I installed Manjaro KDE Minimal Stable, my WiFi connection has been on the scale of XX~XXX Kb/s, while before that it was in the range of 200 Mb/s. I had no connectivity issues while booted from the Live USB, and no issues on Mint before that. While I never used the pre-installed Windows 11 on this device, I assume everything was fine OOTB as well.

The network monitor in my system tray indicates that my connection speed is normal (100~200 Mb/s), and that my signal strength is fine (80~90%), but both Firefox and Pacman download at a rate of no more than 200 Kb/s. Settings > Manjaro Settings > Hardware Configuration > Network controller calls my WiFi card, which is an Intel Alder Lake - P Unknown device name (Intel Corporation). My connection (as indicated by the network monitor in the system tray) is 2.4 GHz, MTU is set to Automatic, WiFi Mode is Infrastructure, and if I try to change or configure anything at all, my laptop just refuses to connect. speedtest-cli bizarrely claims that my bitrate is in the range of 1 ~ 2 Mb/s, which is starkly different from both my expected (read desired), and my perceived connection speed.

I am currently using the linux515 kernel, but originally had the linux61 one (I downgraded because I read about people fixing similar issues this way). As far as I’m aware, all my drivers and headers are up to date for both kernels, and my WiFi card has official support via the iwlwifi open-source driver since linux512 (apparently). The problem is exactly the same on both, and has even persisted when booting from Live USB since I installed Manjaro.

I am not sure what info I need to provide so here’s random stuff I saw being asked about on similar threads:

inxi -Fxxxrazy

System:
  Kernel: 5.15.91-1-MANJARO arch: x86_64 bits: 64 compiler: gcc v: 12.2.1
    parameters: BOOT_IMAGE=/boot/vmlinuz-5.15-x86_64
    root=UUID=baf403df-5aea-4b1e-ab99-68b29dc2fc1c rw quiet splash
    udev.log_priority=3
  Desktop: KDE Plasma v: 5.26.5 tk: Qt v: 5.15.8 wm: kwin_x11 vt: 1 dm: SDDM
    Distro: Manjaro Linux base: Arch Linux
Machine:
  Type: Laptop System: Acer product: Aspire A315-59 v: V1.16
    serial: <superuser required>
  Mobo: ADL model: Callisto_ADU v: V1.16 serial: <superuser required>
    UEFI: Insyde v: 1.16 date: 08/16/2022
Battery:
  ID-1: BAT1 charge: 40.8 Wh (100.0%) condition: 40.8/42.2 Wh (96.8%)
    volts: 13.0 min: 11.6 model: SMP AP18C7K type: Li-ion serial: <filter>
    status: full
  Device-1: hidpp_battery_0 model: Logitech M350 Wireless Mouse
    serial: <filter> charge: 100% (should be ignored) rechargeable: yes
    status: discharging
CPU:
  Info: model: 12th Gen Intel Core i5-1235U bits: 64 type: MST AMCP
    arch: Alder Lake level: v3 note: check built: 2021+
    process: Intel 7 (10nm ESF) family: 6 model-id: 0x9A (154) stepping: 4
    microcode: 0x424
  Topology: cpus: 1x cores: 10 mt: 2 tpc: 2 st: 8 threads: 12 smt: enabled
    cache: L1: 928 KiB desc: d-8x32 KiB, 2x48 KiB; i-2x32 KiB, 8x64 KiB
    L2: 6.5 MiB desc: 2x1.2 MiB, 2x2 MiB L3: 12 MiB desc: 1x12 MiB
  Speed (MHz): avg: 770 high: 982 min/max: 400/4400:3300 scaling:
    driver: intel_pstate governor: powersave cores: 1: 818 2: 732 3: 890 4: 871
    5: 709 6: 759 7: 758 8: 982 9: 757 10: 557 11: 769 12: 641 bogomips: 59916
  Flags: avx avx2 ht lm nx pae sse sse2 sse3 sse4_1 sse4_2 ssse3 vmx
  Vulnerabilities:
  Type: itlb_multihit status: Not affected
  Type: l1tf status: Not affected
  Type: mds status: Not affected
  Type: meltdown status: Not affected
  Type: mmio_stale_data status: Not affected
  Type: retbleed status: Not affected
  Type: spec_store_bypass mitigation: Speculative Store Bypass disabled via
    prctl and seccomp
  Type: spectre_v1 mitigation: usercopy/swapgs barriers and __user pointer
    sanitization
  Type: spectre_v2 status: Vulnerable: eIBRS with unprivileged eBPF
  Type: srbds status: Not affected
  Type: tsx_async_abort status: Not affected
Graphics:
  Device-1: Intel Alder Lake-UP3 GT2 [Iris Xe Graphics]
    vendor: Acer Incorporated ALI driver: i915 v: kernel arch: Gen-12.2
    process: Intel 10nm built: 2021-22+ ports: active: eDP-1
    empty: DP-1,DP-2,HDMI-A-1 bus-ID: 0000:00:02.0 chip-ID: 8086:46a8
    class-ID: 0300
  Device-2: Quanta ACER HD User Facing type: USB driver: N/A bus-ID: 3-7:3
    chip-ID: 0408:4033 class-ID: fe01 serial: <filter>
  Display: x11 server: X.Org v: 21.1.6 compositor: kwin_x11 driver: X:
    loaded: modesetting alternate: fbdev,vesa dri: iris gpu: i915 display-ID: :0
    screens: 1
  Screen-1: 0 s-res: 1920x1080 s-dpi: 96 s-size: 508x285mm (20.00x11.22")
    s-diag: 582mm (22.93")
  Monitor-1: eDP-1 model: ChiMei InnoLux 0x15e7 built: 2016 res: 1920x1080
    hz: 60 dpi: 142 gamma: 1.2 size: 344x193mm (13.54x7.6") diag: 394mm (15.5")
    ratio: 16:9 modes: 1920x1080
  API: OpenGL v: 4.6 Mesa 22.3.4 renderer: Mesa Intel Graphics (ADL GT2)
    direct render: Yes
Audio:
  Device-1: Intel Alder Lake PCH-P High Definition Audio
    vendor: Acer Incorporated ALI driver: sof-audio-pci-intel-tgl
    alternate: snd_hda_intel,snd_sof_pci_intel_tgl bus-ID: 0000:00:1f.3
    chip-ID: 8086:51c8 class-ID: 0401
  Sound API: ALSA v: k5.15.91-1-MANJARO running: yes
  Sound Server-1: JACK v: 1.9.21 running: no
  Sound Server-2: PulseAudio v: 16.1 running: yes
  Sound Server-3: PipeWire v: 0.3.65 running: yes
Network:
  Device-1: Intel Alder Lake-P PCH CNVi WiFi driver: iwlwifi v: kernel
    bus-ID: 0000:00:14.3 chip-ID: 8086:51f0 class-ID: 0280
  IF: wlp0s20f3 state: up mac: <filter>
  Device-2: Realtek RTL8111/8168/8411 PCI Express Gigabit Ethernet
    vendor: Acer Incorporated ALI driver: r8169 v: kernel modules: r8168
    port: 3000 bus-ID: 0000:2a:00.0 chip-ID: 10ec:8168 class-ID: 0200
  IF: enp42s0 state: down mac: <filter>
Bluetooth:
  Device-1: Intel Bluetooth 9460/9560 Jefferson Peak (JfP) type: USB
    driver: btusb v: 0.8 bus-ID: 3-10:4 chip-ID: 8087:0aaa class-ID: e001
  Report: rfkill ID: hci0 rfk-id: 0 state: down bt-service: enabled,running
    rfk-block: hardware: no software: yes address: see --recommends
RAID:
  Hardware-1: Intel Volume Management Device NVMe RAID Controller driver: vmd
    v: 0.6 port: N/A bus-ID: 0000:00:0e.0 chip-ID: 8086:467f rev: class-ID: 0104
Drives:
  Local Storage: total: 476.94 GiB used: 21.36 GiB (4.5%)
  SMART Message: Unable to run smartctl. Root privileges required.
  ID-1: /dev/nvme0n1 maj-min: 259:0 vendor: Samsung model: MZVLQ512HBLU-00B00
    size: 476.94 GiB block-size: physical: 512 B logical: 512 B speed: 31.6 Gb/s
    lanes: 4 type: SSD serial: <filter> rev: FXM7301Q temp: 33.9 C scheme: GPT
Partition:
  ID-1: / raw-size: 476.64 GiB size: 468.09 GiB (98.21%) used: 21.36 GiB (4.6%)
    fs: ext4 dev: /dev/nvme0n1p2 maj-min: 259:2
  ID-2: /boot/efi raw-size: 300 MiB size: 299.4 MiB (99.80%)
    used: 312 KiB (0.1%) fs: vfat dev: /dev/nvme0n1p1 maj-min: 259:1
Swap:
  Kernel: swappiness: 60 (default) cache-pressure: 100 (default)
  ID-1: swap-1 type: file size: 512 MiB used: 0 KiB (0.0%) priority: -2
    file: /swapfile
Sensors:
  System Temperatures: cpu: 39.0 C mobo: N/A
  Fan Speeds (RPM): N/A
Repos:
  Packages: pm: pacman pkgs: 1348 libs: 450 tools: pamac
  Active pacman repo servers in: /etc/pacman.d/mirrorlist
    1: https://manjaro.ipacct.com/manjaro/stable/$repo/$arch
    2: http://manjaro.mirrors.uk2.net/stable/$repo/$arch
    3: http://mirrors.colocall.net/manjaro/stable/$repo/$arch
    4: https://mirror.init7.net/manjaro/stable/$repo/$arch
    5: https://fastmirror.pp.ua/manjaro/stable/$repo/$arch
    6: https://mirror.23m.com/manjaro/stable/$repo/$arch
    7: https://manjaro.ynh.ovh/stable/$repo/$arch
    8: https://manjaro.kyberorg.fi/stable/$repo/$arch
    9: https://quantum-mirror.hu/mirrors/pub/manjaro/stable/$repo/$arch
    10: https://manjaro.mirrors.lavatech.top/stable/$repo/$arch
    11: https://mirror.zetup.net/manjaro/stable/$repo/$arch
    12: https://mirror.easyname.at/manjaro/stable/$repo/$arch
    13: https://mirror.cyberhost.uk/sites/manjaro/stable/$repo/$arch
    14: https://mirrors.dotsrc.org/manjaro/stable/$repo/$arch
    15: https://ftp.halifax.rwth-aachen.de/manjaro/stable/$repo/$arch
    16: https://mirror.alwyzon.net/manjaro/stable/$repo/$arch
    17: https://repo.skni.umcs.pl/manjaro/stable/$repo/$arch
    18: https://mirrors.up.pt/pub/manjaro/stable/$repo/$arch
    19: https://mirror.moson.org/manjaro/stable/$repo/$arch
    20: https://mirror.futureweb.be/manjaro/stable/$repo/$arch
    21: https://ftp.gwdg.de/pub/linux/manjaro/stable/$repo/$arch
    22: https://mirror.alpix.eu/manjaro/stable/$repo/$arch
    23: https://ftp.lysator.liu.se/pub/manjaro/stable/$repo/$arch
    24: https://mirror.truenetwork.ru/manjaro/stable/$repo/$arch
    25: https://mirror.kamtv.ru/manjaro/stable/$repo/$arch
    26: https://mirror.tarnkappe.info/manjaro/stable/$repo/$arch
Info:
  Processes: 281 Uptime: 1h 20m wakeups: 2001 Memory: 11.4 GiB
  used: 3.21 GiB (28.2%) Init: systemd v: 252 default: graphical
  tool: systemctl Compilers: gcc: 12.2.1 clang: 15.0.7 Shell: Zsh v: 5.9
  default: Bash v: 5.1.16 running-in: konsole inxi: 3.3.24

mhwd -l -d

--------------------------------------------------------------------------------
> PCI Device: /devices/pci0000:00/0000:00:02.0 (0300:8086:46a8)
  Display controller Intel Corporation 
--------------------------------------------------------------------------------
  > INSTALLED:

   NAME:        video-linux
   ATTACHED:    PCI
   VERSION:     2018.05.04
   INFO:        Standard open source drivers.
   PRIORITY:    2
   FREEDRIVER:  true
   DEPENDS:     -
   CONFLICTS:   -
   CLASSIDS:    0300 0380 0302 
   VENDORIDS:   1002 8086 10de 



  > AVAILABLE:

   NAME:        video-linux
   ATTACHED:    PCI
   VERSION:     2018.05.04
   INFO:        Standard open source drivers.
   PRIORITY:    2
   FREEDRIVER:  true
   DEPENDS:     -
   CONFLICTS:   -
   CLASSIDS:    0300 0380 0302 
   VENDORIDS:   1002 8086 10de 

   NAME:        video-modesetting
   ATTACHED:    PCI
   VERSION:     2020.01.13
   INFO:        X.org modesetting video driver.
   PRIORITY:    1
   FREEDRIVER:  true
   DEPENDS:     -
   CONFLICTS:   -
   CLASSIDS:    0300 
   VENDORIDS:   * 

   NAME:        video-vesa
   ATTACHED:    PCI
   VERSION:     2017.03.12
   INFO:        X.org vesa video driver.
   PRIORITY:    0
   FREEDRIVER:  true
   DEPENDS:     -
   CONFLICTS:   -
   CLASSIDS:    0300 
   VENDORIDS:   * 


--------------------------------------------------------------------------------
> PCI Device: /devices/pci0000:00/0000:00:1d.0/0000:2a:00.0 (0200:10ec:8168)
  Network controller Realtek Semiconductor Co., Ltd. RTL8111/8168/8411 PCI Express Gigabit Ethernet Controller
--------------------------------------------------------------------------------
  > AVAILABLE:

   NAME:        network-r8168
   ATTACHED:    PCI
   VERSION:     2016.04.20
   INFO:        RealTek RTL-8168 Gigabit Ethernet driver
   PRIORITY:    0
   FREEDRIVER:  true
   DEPENDS:     -
   CONFLICTS:   -
   CLASSIDS:    0200 
   VENDORIDS:   1186 10ec 


Warning: no configs for USB devices found!

speedtest-cli

Retrieving speedtest.net configuration...
Testing from [ REDACTED ] (**.**.**.**)...
Retrieving speedtest.net server list...
Selecting best server based on ping...
Hosted by [ REDACTED ] ([ REDACTED ]) [ca. 400km / 250 mi]: 4083.371 ms
Testing download speed.........................................................
Download: 1.41 Mbit/s
Testing upload speed...........................................................
Upload: 2.00 Mbit/s

EDIT:
I found the issue. MTU - Automatic does not mean the system determines the best MTU for a given connection (TIL), but that it just reads the default value, which for me was 1500 bytes and resulted in ~99% packet loss. I’ve set it to 996 bytes and everything’s in order now.

EDIT 2:
I didn’t fix anything, turns out I only have this problem on one specific network, and I cannot fathom why. All other devices with all kinds of OS’s work fine on that network, and my device works fine on every other network. The MTU change did result in a notable improvement, though.

Out of interest, how did you determine the correct MTU value?

1 Like

Experimentally. I did ping -c 64 -f <MTU> 8.8.8.8 starting from 228 and going up in increments of 16 until I hit a packet loss rate of >0%, which happened at 10XX (don’t remember exactly). I set it to 996 after that because it’s at almost the theoretical maximum for that connection (1060 is 100% packet loss) and 996, when you add the 28 padding bytes that showed up in my tests, is 1024 or exactly 1 kB MTU.

If you’re still not entirely happy with your solution, try disabling wifi powersave - How to turn off Wireless power management permanently.
I"ve had similar problems with my WiFi on Manjaro (this was on Xfce). Disabling powersave did make it fully usable, though FWIW it was just a temp solution for me, but WiFi powersave is notoriously problematic (and on Win too).