GPU VulnDB

Database/Kernel, userspace & hypervisor

Linux kernel i40e: wrong dev_id in free_irq() leaves IRQs un-freed on the MSI-X error path

CVSS 7.8CVE-2025-39911Kernel, userspace & hypervisorcurated

Impact

If request_irq() fails on a later iteration in i40e_vsi_request_irq_msix(), the unwind calls free_irq() with the wrong dev_id, so the already-requested IRQs are not released and the kernel warns "Trying to free already-free IRQ". Intel X710/XL710 NICs are common management and storage NICs on GPU hosts; the path runs when bringing an interface up, so the realistic consequence is a leaked IRQ and an inconsistent interface state after a failed ip link set up, not a tenant-controlled memory primitive. The reporter reached it only by injecting failures. Worth taking with the rest of your stable kernel updates rather than on its own window.

Who can reach it

Local and privileged: requires bringing up an i40e interface (root / NET_ADMIN) and an interrupt-request failure part way through setup. No tenant or remote path.

What to do

Fold the stable kernel fix (five backports linked) into your next kernel update and reboot the node; nothing to do at runtime. Low urgency relative to the other kernel items in the same batch. No fixed version string in the record.

References

Related entries

All Kernel, userspace & hypervisor entries

This entry is curated: imported from vendor advisories with machine assistance, not yet individually verified. Confirm against your vendor's advisory before acting, and report anything wrong.