mt7925e corrupts data over WiFi
Nobody has claimed this yet.
- Dominant language
- C
- Stars
- 888
- Forks
- 436
- PR merge metrics
- No merged PRs in 30d
Description
Summary
mt7925e reliably corrupts data during sustained/large TX transfers over WiFi (TLS records fail integrity check on the receiving server — net::ERR_SSL_BAD_RECORD_MAC_ALERT), while the radio/MAC layer reports a completely clean link (no deauth, no beacon loss, tx failed: 0). The same transfer succeeds immediately and reliably when routed over a wired connection (USB tethering) instead of this WiFi adapter, isolating the fault to the WiFi TX path.
Hardware
- Adapter: MediaTek MT7925 802.11be 160MHz 2x2 PCIe [Filogic 360] (Lenovo laptop, subsystem
e0ff) - Driver:
mt7925e(in-tree mt76/mt792x stack) - ASIC revision:
79250000 - Firmware:
WIFI_MT7925_PATCH_MCU_1_1_hdr.bin/WIFI_RAM_CODE_MT7925_1_1.bin, HW/SW Version0x8a108a10, build20260605184651a/ WM firmware build20260605184805 linux-firmwarepackage version:20260810- Kernel:
7.1.8(linuxPackages_lateston NixOS) - Kernel cmdline includes
pcie_aspm=off; module loaded withdisable_aspm=1
Symptom
Large uploads (multi-MB email attachments via a web app, ~2-8MB each) fail consistently with:
Failed to load resource: net::ERR_SSL_BAD_RECORD_MAC_ALERT
[default] Failed to upload attachment (X MB, ~200-280ms) Error: Failed to load undefined
The same failure mode also manifests as repeated connection drops on a long-lived HTTPS/streaming session (an AI CLI tool making sustained API calls) on the same host/network.
What's been ruled out
- Signal strength: consistently strong throughout testing, -44 to -52 dBm.
- DFS channel instability: originally associated on channel 104 (5745MHz, DFS band); forced router to fixed channel 36 (non-DFS) — issue persisted identically.
- Power management:
iw dev wlan0 set power_save offapplied and verified persistent across resume/reconnect (via NetworkManager dispatcher script) — no change. - PCIe ASPM: disabled via both
pcie_aspm=offkernel param anddisable_aspm=1module option — no change. - NIC checksum/segmentation offload:
tx-checksummingandscatter-gatherare already off at the netdev level (computed in software), GSO forced off as a dependency — rules out a kernel-side TSO/checksum-offload bug as the corruption source; points at the driver/firmware's own TX path (framing, aggregation, or hardware AES-CCMP encryption) instead. - Router/AP: same corruption on two different physical BSSIDs (2.4GHz and 5GHz radios) on the same AP;
- Not a radio-layer link problem:
iw station dumpshowstx failed: 0,beacon loss: 0throughout every failure — only elevatedtx retries(consistently 15-25% of tx packets, even on a fresh, strong link), which never correlates with the exact timing of the corruption events in kernel/NetworkManager logs. - Not the server or browser: identical file, identical destination, over wired USB tethering (bypassing this adapter entirely) — uploads succeed immediately, every time.
Reproduction
- Associate to a 5GHz AP (VHT80, verified on both DFS channel 104 and non-DFS channel 36).
- Perform a sustained TX-heavy operation over TLS — a multi-MB HTTPS upload, or a long-lived HTTPS/streaming session.
- Observe TLS record corruption reported by the remote endpoint (
bad_record_macalert), while local radio stats show no disconnect/beacon-loss/tx-failure. - Repeat the identical operation over a wired connection — succeeds without issue.
Ask
Has anyone else seen TX-side data corruption (as opposed to the more commonly reported roaming/MCU-timeout/throughput issues) on mt7925e? Any pointers on how to isolate this further — debugfs counters for hardware AES-CCMP encryption errors, aggregation-related corruption, or DMA issues ?
Contributor guide
No contributing guide indexed for this repository
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Start by reproducing the sustained TLS upload failure with the mt7925e driver while comparing WiFi and wired results. Review mt76/mt792x behavior and use the mentioned debugfs counters, iw station dump output, and existing kernel or NetworkManager logs to investigate AES-CCMP, aggregation, and DMA paths. Done means isolating the TX corruption source or documenting a concrete driver or firmware defect.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- c, linux
- Domain
- networking, operating-systems
- Issue type
- Bug
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Active
- Clarity
- Needs clarification
- Newbie friendliness
- 35/100