Executive brief
The Liquidio network driver in the Linux kernel fails to properly clean up hardware resources (BAR memory mappings) when device initialization encounters certain errors. An attacker with local access could trigger this failure during driver loading, causing resource exhaustion that may prevent the driver from being loaded again until the system reboots.
Technical details
This is a resource leak vulnerability in the Liquidio driver's cn23xx device initialization code (setup_cn23xx_octeon_pf_device). When cn23xx_get_pf_num() or cn23xx_sriov_config() fails during probe, the function returns without unmapping BAR0 and BAR1 I/O memory regions, leaving them permanently consumed. The vulnerability requires local code execution or device control during driver probe. The fix adds proper error path handling using goto labels to ensure both BARs are unmapped in all failure cases before returning. This was discovered through manual code review and patched upstream.
Affected products
- Linux Linux kernel various versions prior to patch date
Timeline
- 2026-08-15: disclosed
- 2026-07-24: patched