Dev

Linux ath11k Driver Improvement Cuts WiFi 6 Latency to One-Seventh

A series of patches for the Linux ath11k driver for Qualcomm WiFi 6 chipsets has been proposed, reducing network latency by up to seven times.

4 min read Reviewed & edited by the SINGULISM Editorial Team

Linux ath11k Driver Improvement Cuts WiFi 6 Latency to One-Seventh
Photo by Dreamlike Street on Unsplash

The Latency Problem in the ath11k Driver

A series of patches currently in development for the Linux kernel’s “ath11k” wireless driver, which supports Qualcomm WiFi 6 (802.11ax) chipsets, aims to significantly improve network latency. According to a report by Michael Larabel on Phoronix, these fixes reduce latency by up to seven-fold or, under the same latency conditions, increase throughput by 2.2 times.

The root of the problem lies in the ath11k driver not having its own transmit queue. This flaw means that when the network is saturated, all data frames awaiting transmission are placed directly into the hardware’s TX ring buffer. This buffer lacks both AQM (Adaptive Queue Management) and flow separation, leading to a sharp increase in latency.

A Fundamental Fix by a Developer

Open-source developer Julius Bairaktaris tackled this issue. In the patch series cover letter, Bairaktaris explains that the ath11k driver advertised neither “NL80211_EXT_FEATURE_AQL” nor “NL80211_EXT_FEATURE_AIRTIME_FAIRNESS.” Both mechanisms in mac80211 were non-functional for this driver, which operated in a state devoid of queue management.

Benchmarks were conducted in an environment with one High Efficiency (HE) client connected to an IPQ8074 access point, under saturated TCP downstream traffic. The probe frequency was 20 Hz, measuring latency within the same access category.

Benchmark Results in Detail

The results are striking. In the standard (stock) state, throughput was 94.6 Mbit/s with a latency of 155ms. Setting the default limit value (aql_txq_limit) had no effect, yielding a virtually unchanged 94.0 Mbit/s and 157ms. mac80211 reported the airtime for the queued frames as zero, and FQ-CoDel considered the backlog to be one frame.

After applying Bairaktaris’s patches, with the aql_txq_limit for the Best Effort queue set to 500/1000, throughput decreased to 74.3 Mbit/s, but latency dropped dramatically to 22ms. Excluding Patch 6 (completion-driven scheduling round) resulted in 33.7 Mbit/s and 21ms, indicating this patch contributes a 2.2x throughput improvement under the same latency conditions.

Technical Overview of the Patches

The entire series consists of just 9 patches, totaling approximately 150 lines of code. By returning queue control to the mac80211 framework, the series works at no cost when limits are not constraining and achieves up to a seven-fold latency reduction when limits are in effect. AI model Claude Opus 5 assisted in the development, marking a notable example of AI utilization in tech development at InSection.

The code is currently under review on the Linux kernel mailing list. If merged, it is expected to significantly improve network performance in Linux environments for access points and devices using Qualcomm WiFi 6 chipsets.

Development related to Linux kernel networking is highly active. The Linux 7.2-rc1 release published last week integrated AMDGPU HDMI 2.1 FRL and Cache Aware Scheduling. Furthermore, the Linux Cache Aware Scheduling extension has improved MySQL processing speed by up to 360%, demonstrating the significant impact kernel-level optimizations can have on the application layer.

The ath11k driver fix is positioned as part of this broader trend of quality improvement across kernel subsystems. Ensuring proper coordination between the mac80211 framework and drivers enhances the reliability of the entire wireless networking stack.

The New Trend of AI-Assisted Development

The involvement of Claude Opus 5 in developing these patches carries significant implications for the kernel development community. Traditionally, creating Linux kernel patches relied on manual work by experienced developers. The introduction of AI assistance promises increased development productivity and more efficient bug detection.

However, the quality assessment of AI-generated code and its compatibility with the kernel’s strict review process remain untested. With this patch set being small (only 9 patches) and confined to modifications within the existing mac80211 framework, AI utilization is being validated in this contained domain first.

Editorial Opinion

In the short term, integrating this patch into the Linux kernel promises immediate performance improvements for Linux-based access points and routers using Qualcomm WiFi 6 chipsets. Latency issues in multi-user or high-load networks have been a long-standing challenge, and achieving a seven-fold reduction in latency simply with the “aql_txq_limit” setting is a notable accomplishment. Given its small size of about 150 lines, integration into the mainline tree could happen relatively soon. In the long term, the accumulation of AI-assisted kernel patch development could begin to alter the kernel development process itself. The explicit mention of Claude Opus 5’s assistance will likely accelerate discussions on AI use within the kernel community. However, as kernel code operates in areas requiring high safety, review standards for AI-generated code must be strictly maintained. A particularly noteworthy point from this article is that the ath11k driver had been left without support for AQL or Airtime Fairness for a long period.

References

Source: Phoronix

Comments

← Back to Home