Wifi Network Speed - Intel Wireless 7265 driver: iwlwifi

I have just recently realized that my WiFi speeds on my Manjaro laptop are very slow, and drops frequently. I don’t believe this is a new issue - just my awareness… (copying files across wifi to my tablet is oh - 20x faster than copying the same files to my laptop)…

I’ve been spending the last couple of hours trying to find how to fix this - but I’m at a loss and could use some help…
Note: I did go to get the latest driver files from this site: Linux* Support for Intel® Wireless Adapters and found a .tgz file there that works in kernel 4.2+.

?? I see the instructions are to copy that file into /lib/firmware … however - do I extract the files and just move the individual files to /lib/firmware?

There are 2 files already there:

  • iwlwifi-7265-17.ucode
  • iwlwifi-7265D-29.ucode

The files in the .tgz file are:

  • iwlwifi-7265-14.ucode
  • iwlwifi-7265D-14.ucode

It seems the files in the .tgz file are quite a bit older than what is currently there.

Here’s my specs: Any help would be greatly appreciated.

Wifi: intel Wireless 7265 driver: iwlwifi

Linux 6.6.8-2-MANJARO

Network:
Device-1: Intel Wireless 7265 driver: iwlwifi
DISTRIB_ID=“ManjaroLinux”
DISTRIB_RELEASE=“23.1.2”
DISTRIB_CODENAME=“Vulcan”
DISTRIB_DESCRIPTION=“Manjaro Linux”

Lets stop right there.

If you really need newer iwlwifi then you would probably want to try a packaged version, such as iwlwifi-next from the AUR.

But. You probably dont want to do that either, at least not as your first solution.

To begin … lets start with system info;

inxi -Fazy

Information about the module may be useful as well

modinfo -p iwlwifi

I suppose I can add a link to common options for iwlwifi. Specifically the antenna aggregation and swcrypto. ex

/etc/modprobe.d/iwlwifi.conf

options iwlwifi 11n_disable=8 swcrypto=1

https://wiki.archlinux.org/title/Network_configuration/Wireless#iwlwifi

And a note. This guide will cover tips on how to post such as formatting code, etc.

Details follow:
Note: there is NO iwlwifi.conf found in /etc/modprobe.d

  • should I create a file and add the line: options iwlwifi 11n_disable=8 swcrypto=1 ??
System:
  Kernel: 6.6.8-2-MANJARO arch: x86_64 bits: 64 compiler: gcc v: 13.2.1
    clocksource: tsc available: hpet,acpi_pm
    parameters: BOOT_IMAGE=/boot/vmlinuz-6.6-x86_64
    root=UUID=148e2495-7438-48f3-8529-ca67fcc5f4bf rw quiet splash
    udev.log_priority=3
  Desktop: KDE Plasma v: 5.27.10 tk: Qt v: 5.15.11 wm: kwin_x11 vt: 2
    dm: SDDM Distro: Manjaro Linux base: Arch Linux
Machine:
  Type: Laptop System: HP product: HP Spectre x360 Convertible v: N/A
    serial: <superuser required> Chassis: type: 10 serial: <superuser required>
  Mobo: HP model: 804E v: 33.23 serial: <superuser required>
    UEFI: American Megatrends v: F.2D date: 10/23/2015
Battery:
  ID-1: BAT0 charge: 52.2 Wh (97.4%) condition: 53.6/53.6 Wh (100.0%)
    volts: 12.7 min: 11.4 model: Hewlett-Packard Primary type: Li-ion serial: N/A
    status: not charging
  Device-1: hidpp_battery_0 model: Logitech Marathon Mouse/Performance Plus
    M705 serial: <filter> charge: 10% (should be ignored) rechargeable: yes
    status: discharging
  Device-2: hidpp_battery_1 model: Logitech MK700 serial: <filter>
    charge: 70% (should be ignored) rechargeable: yes status: discharging
CPU:
  Info: model: Intel Core i7-6500U bits: 64 type: MT MCP arch: Skylake
    gen: core 6 level: v3 note: check built: 2015 process: Intel 14nm family: 6
    model-id: 0x4E (78) stepping: 3 microcode: 0xF0
  Topology: cpus: 1x cores: 2 tpc: 2 threads: 4 smt: enabled cache:
    L1: 128 KiB desc: d-2x32 KiB; i-2x32 KiB L2: 512 KiB desc: 2x256 KiB
    L3: 4 MiB desc: 1x4 MiB
  Speed (MHz): avg: 500 high: 800 min/max: 400/3100 scaling:
    driver: intel_pstate governor: powersave cores: 1: 400 2: 400 3: 400 4: 800
    bogomips: 20810
  Flags: avx avx2 ht lm nx pae sse sse2 sse3 sse4_1 sse4_2 ssse3
  Vulnerabilities:
  Type: gather_data_sampling status: Vulnerable: No microcode
  Type: itlb_multihit status: KVM: VMX unsupported
  Type: l1tf mitigation: PTE Inversion
  Type: mds mitigation: Clear CPU buffers; SMT vulnerable
  Type: meltdown mitigation: PTI
  Type: mmio_stale_data mitigation: Clear CPU buffers; SMT vulnerable
  Type: retbleed mitigation: IBRS
  Type: spec_rstack_overflow status: Not affected
  Type: spec_store_bypass mitigation: Speculative Store Bypass disabled via
    prctl
  Type: spectre_v1 mitigation: usercopy/swapgs barriers and __user pointer
    sanitization
  Type: spectre_v2 mitigation: IBRS, IBPB: conditional, STIBP: conditional,
    RSB filling, PBRSB-eIBRS: Not affected
  Type: srbds mitigation: Microcode
  Type: tsx_async_abort status: Not affected
Graphics:
  Device-1: Intel Skylake GT2 [HD Graphics 520] vendor: Hewlett-Packard
    driver: i915 v: kernel arch: Gen-9 process: Intel 14n built: 2015-16 ports:
    active: HDMI-A-1 off: eDP-1 empty: DP-1,HDMI-A-2 bus-ID: 00:02.0
    chip-ID: 8086:1916 class-ID: 0300
  Device-2: Sunplus Innovation HP Truevision Full HD driver: uvcvideo
    type: USB rev: 2.0 speed: 480 Mb/s lanes: 1 mode: 2.0 bus-ID: 1-6:4
    chip-ID: 1bcf:2c7d class-ID: 0e02
  Display: x11 server: X.Org v: 21.1.10 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: HDMI-A-1 mapped: HDMI-1 pos: primary
    model: LG (GoldStar) FULL HD built: 2015 res: 1920x1080 hz: 60 dpi: 102
    gamma: 1.2 size: 480x270mm (18.9x10.63") diag: 551mm (21.7") ratio: 16:9
    modes: max: 1920x1080 min: 720x400
  Monitor-2: eDP-1 note: disabled model: LG Display built: 2013
    res: 1920x1080 dpi: 222 gamma: 1.2 size: 293x165mm (11.54x6.5")
    diag: 336mm (13.2") ratio: 16:9 modes: 2560x1440
  API: EGL v: 1.5 hw: drv: intel iris platforms: device: 0 drv: iris
    device: 1 drv: swrast surfaceless: drv: iris x11: drv: iris
    inactive: gbm,wayland
  API: OpenGL v: 4.6 compat-v: 4.5 vendor: intel mesa v: 23.1.9-manjaro1.1
    glx-v: 1.4 direct-render: yes renderer: Mesa Intel HD Graphics 520 (SKL GT2)
    device-ID: 8086:1916 memory: 7.49 GiB unified: yes
  API: Vulkan v: 1.3.274 layers: N/A device: 0 type: integrated-gpu
    name: Intel HD Graphics 520 (SKL GT2) driver: mesa intel v: 23.1.9-manjaro1.1
    device-ID: 8086:1916 surfaces: xcb,xlib
Audio:
  Device-1: Intel Sunrise Point-LP HD Audio vendor: Hewlett-Packard
    driver: snd_hda_intel v: kernel alternate: snd_soc_skl,snd_soc_avs
    bus-ID: 00:1f.3 chip-ID: 8086:9d70 class-ID: 0403
  API: ALSA v: k6.6.8-2-MANJARO status: kernel-api with: aoss
    type: oss-emulator tools: alsactl,alsamixer,amixer
  Server-1: JACK v: 1.9.22 status: off tools: N/A
  Server-2: PipeWire v: 1.0.0 status: off with: wireplumber status: active
    tools: pw-cli,wpctl
  Server-3: PulseAudio v: 16.1 status: active with: pulseaudio-alsa
    type: plugin tools: pacat,pactl
Network:
  Device-1: Intel Wireless 7265 driver: iwlwifi v: kernel pcie: gen: 1
    speed: 2.5 GT/s lanes: 1 bus-ID: 02:00.0 chip-ID: 8086:095a class-ID: 0280
  IF: wlo1 state: up mac: <filter>
Bluetooth:
  Device-1: Intel Bluetooth wireless interface driver: btusb v: 0.8 type: USB
    rev: 2.0 speed: 12 Mb/s lanes: 1 mode: 1.1 bus-ID: 1-7:5 chip-ID: 8087:0a2a
    class-ID: e001
  Report: rfkill ID: hci0 rfk-id: 1 state: up address: see --recommends
Drives:
  Local Storage: total: 238.47 GiB used: 187.84 GiB (78.8%)
  SMART Message: Unable to run smartctl. Root privileges required.
  ID-1: /dev/sda maj-min: 8:0 vendor: Samsung model: MZNTE256HMHP-000H1
    size: 238.47 GiB block-size: physical: 512 B logical: 512 B speed: 6.0 Gb/s
    tech: SSD serial: <filter> fw-rev: 2H0Q scheme: GPT
Partition:
  ID-1: / raw-size: 238.17 GiB size: 233.38 GiB (97.99%)
    used: 187.84 GiB (80.5%) fs: ext4 dev: /dev/sda2 maj-min: 8:2
  ID-2: /boot/efi raw-size: 300 MiB size: 299.4 MiB (99.80%)
    used: 312 KiB (0.1%) fs: vfat dev: /dev/sda1 maj-min: 8:1
Swap:
  Alert: No swap data was found.
Sensors:
  System Temperatures: cpu: 41.0 C pch: 37.0 C mobo: N/A
  Fan Speeds (rpm): N/A
Info:
  Processes: 227 Uptime: 1h 3m wakeups: 0 Memory: total: 8 GiB
  available: 7.67 GiB used: 5.39 GiB (70.2%) Init: systemd v: 254
  default: graphical tool: systemctl Compilers: gcc: 13.2.1 clang: 16.0.6
  Packages: 1771 pm: pacman pkgs: 1746 libs: 457 tools: pamac pm: appimage
  pkgs: 0 pm: flatpak pkgs: 25 Shell: Zsh v: 5.9 default: Bash v: 5.2.21
  running-in: konsole inxi: 3.3.31

modinfo -p iwlwifi                                                                                                                                                                                                    ✔  4s  
debug:debug output mask (uint)
swcrypto:using crypto in software (default 0 [hardware]) (int)
11n_disable:disable 11n functionality, bitmap: 1: full, 2: disable agg TX, 4: disable agg RX, 8 enable agg TX (uint)
amsdu_size:amsdu size 0: 12K for multi Rx queue devices, 2K for AX210 devices, 4K for other devices 1:4K 2:8K 3:12K (16K buffers) 4: 2K (default 0) (int)
fw_restart:restart firmware in case of error (default true) (bool)
nvm_file:NVM file name (charp)
uapsd_disable:disable U-APSD functionality bitmap 1: BSS 2: P2P Client (default: 3) (uint)
enable_ini:0:disable, 1-15:FW_DBG_PRESET Values, 16:enabled without preset value defined,Debug INI TLV FW debug infrastructure (default: 16) (uint)
bt_coex_active:enable wifi/bt co-exist (default: enable) (bool)
led_mode:0=system default, 1=On(RF On)/Off(RF Off), 2=blinking, 3=Off (default: 0) (int)
power_save:enable WiFi power management (default: disable) (bool)
power_level:default power save level (range from 1 - 5, default: 1) (int)
disable_11ac:Disable VHT capabilities (default: false) (bool)
remove_when_gone:Remove dev from PCIe bus if it is deemed inaccessible (default: false) (bool)
disable_11ax:Disable HE capabilities (default: false) (bool)
disable_11be:Disable EHT capabilities (default: false) (bool)

Moderator edit: In the future, please use proper formatting: [HowTo] Post command output and file content as formatted text

One is not expected.
The proposed file is an override.
Please create it with that content.
(technically the filename can be anything at that location ending in .conf)

After a reboot check your performance.

File created - rebooted - no improvement… (may even be worse?)

Note: this is the exact text in the file I created: options iwlwifi 11n_disable=8 swcrypto=1
… just wanted to make sure the word ‘options’ is to be included!

You got it right.

I pretty much turn those on on every intel wireless device … but it isnt always ‘the fix’.

Next I would try disabling power management on the related iwlmvm module.

So same thing, different file.

/etc/modprobe.d/iwlmvm.conf

options iwlmvm power_scheme=1

Reboot.

Check performance (with both files).

If not improved then remove the first file

sudo rm /etc/modprobe.d/iwlwifi.conf

Reboot.

Check performance (with only the powersave one now).


There are a few other common options, but mostly ones I consider undesirable such as disabling 802.11n.

EDIT

Your device is supposed to be too new to be affected by bluetooth interaction but it may be worth trying.

/etc/modprobe.d/iwlbt.conf

options iwlwifi bt_coex_active=0

(or try in conjunction with others as above)

Having the power management disabled seems to have the best impact… much better. I’ve been trying with all 3 files on/off (11n, power, bt_coex)…

I can’t say which combination is best - I’ll need more clean testing… but it seems the power management alone may have the best impact

Still isn’t nearly as fast as my other devices - but its a big improvement so far.