CVE-2025-39911

CVE-2025-39911

High · published October 1, 2025

CVSS v3.1
7.8
EPSS
0%
Percentile
4.9
In the wild
Unconfirmed
What it is

In the Linux kernel, the following vulnerability has been resolved:

i40e: fix IRQ freeing in i40e_vsi_request_irq_msix error path

If request_irq() in i40e_vsi_request_irq_msix() fails in an iteration

later than the first, the error path wants to free the IRQs requested

so far. However, it uses the wrong dev_id argument for free_irq(), so

it does not free the IRQs correctly and instead triggers the warning:

Trying to free already-free IRQ 173

WARNING: CPU: 25 PID: 1091 at kernel/irq/manage.c:1829 __free_irq+0x192/0x2c0

Modules linked in: i40e(+) [...]

CPU: 25 UID: 0 PID: 1091 Comm: NetworkManager Not tainted 6.17.0-rc1+ #1 PREEMPT(lazy)

Hardware name: [...]

RIP: 0010:__free_irq+0x192/0x2c0

[...]

Call Trace:

<TASK>

free_irq+0x32/0x70

i40e_vsi_request_irq_msix.cold+0x63/0x8b [i40e]

i40e_vsi_request_irq+0x79/0x80 [i40e]

i40e_vsi_open+0x21f/0x2f0 [i40e]

i40e_open+0x63/0x130 [i40e]

__dev_open+0xfc/0x210

__dev_change_flags+0x1fc/0x240

netif_change_flags+0x27/0x70

do_setlink.isra.0+0x341/0xc70

rtnl_newlink+0x468/0x860

rtnetlink_rcv_msg+0x375/0x450

netlink_rcv_skb+0x5c/0x110

netlink_unicast+0x288/0x3c0

netlink_sendmsg+0x20d/0x430

____sys_sendmsg+0x3a2/0x3d0

___sys_sendmsg+0x99/0xe0

__sys_sendmsg+0x8a/0xf0

do_syscall_64+0x82/0x2c0

entry_SYSCALL_64_after_hwframe+0x76/0x7e

[...]

</TASK>

---[ end trace 0000000000000000 ]---

Use the same dev_id for free_irq() as for request_irq().

I tested this with inserting code to fail intentionally.

The record
Technical detail
CVSS v3.1
7.8 · HIGH
Vector
CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H
CVSS v4.0
Not supplied
EPSS
0.00161 · 4.9th percentile
Published
2025-10-01T12:15Z
Affected products (13)
ProductVersionsFixed in
linux/linux_kernel≥ 3.13, < 5.4.3005.4.300
linux/linux_kernel≥ 5.5, < 5.10.2455.10.245
linux/linux_kernel≥ 5.11, < 5.15.1945.15.194
linux/linux_kernel≥ 5.16, < 6.1.1536.1.153
linux/linux_kernel≥ 6.2, < 6.6.1076.6.107
linux/linux_kernel≥ 6.7, < 6.12.486.12.48
linux/linux_kernel≥ 6.13, < 6.16.86.16.8
linux/linux_kernelall versions—
linux/linux_kernelall versions—
linux/linux_kernelall versions—
linux/linux_kernelall versions—
linux/linux_kernelall versions—
debian/debian_linuxall versions—
References (9)
EPSS history
Timeline
  • 01 OCT 07:44Z
    i40e: fix IRQ freeing in i40e_vsi_request_irq_msix error path
    cvelistv5