CVE-2026-93796: wifi: iwlwifi: pcie: null RX pointers after free
In the Linux kernel, the following vulnerability has been resolved:
wifi: iwlwifi: pcie: null RX pointers after free
When iwlpcietxinit() fails after RX init, nic init unwinds via iwlpcierxfree().
The freed RX members stayed non-NULL on the live transport object, so later teardown or retry could touch stale RX state. Set rxpool, globaltable, rxq, and allocpage to NULL after free to make repeated cleanup and retry paths safe.
Affected Software
Remediation
Recommended actions to resolve this vulnerability, in priority order.
- Configuration
Set rx_pool, global_table, rxq, and alloc_page to NULL after freeing them so repeated cleanup and retry paths cannot access stale RX state.
Linux kernel iwlwifi PCIe rx_pool, global_table, rxq, and alloc_page = NULL
Event History
Frequently Asked Questions
When can this issue be triggered?
It occurs when iwl_pcie_tx_init() fails after RX initialization has completed. The subsequent initialization unwind frees RX resources but leaves RX-related pointers non-NULL, allowing later cleanup or retry paths to access stale state.
Which systems are exposed?
Systems using the Linux kernel iwlwifi PCIe transport are relevant, specifically where the affected initialization failure, teardown, or retry sequence can occur. The provided information does not identify particular hardware models, kernel versions, or default configurations.
What is the practical remediation?
Apply a Linux kernel update containing the referenced fixes. The fix clears rx_pool, global_table, rxq, and alloc_page after they are freed so repeated cleanup and retry paths do not retain stale RX pointers.