Executive brief
The Linux kernel's WiFi driver for TI wlcore chipsets (wl128x, wl18xx) contains a logic error in cipher suite negotiation that causes repeated hardware recovery cycles and connection failures. The bug prevents users with older firmware from establishing stable WiFi connections, triggering endless error loops that degrade system stability and usability.
Technical details
The vulnerability is a logic error in cipher suite configuration in the wlcore wireless driver (drivers/net/wireless/ti/wlcore/main.c). A firmware version check for IGTK (Integrity Group Temporal Key) support introduced in commit c34dbc5900b0 incorrectly decrements the cipher suite count on every boot when encountering older firmware, and fails to account for hardware variants like wl12xx that do not support IGTK. The decrement-on-boot pattern causes the supported cipher count to shrink on each reboot, eventually exhausting available ciphers and preventing key installation. On affected wl128x hardware with firmware versions below 8.9.1, this manifests as repeated "could not set keys" errors, failed key operations, and continuous hardware recovery attempts. The fix replaces the buggy decrement logic with proper conditional initialization that disables IGTK support on wl12xx and sets the cipher suite count to the correct fixed value based on firmware version and chip family.
Affected products
- Linux Linux kernel affected versions prior to patch 7495adaa0e45e180f4b6b7436675c6266edff1ff
Timeline
- 2026-06-04: disclosed
- 2026-06-04: patched
- 2026-08-28: advisory