CVE-2025-39911 json
i40e: fix IRQ freeing in i40e_vsi_request_irq_msix error path
published last yr. modified 21d ago also EUVD-2025-32660
- cvss
- 7.8
- version 3.1, NVD
- cisa kev
- Not listed
- not in CISA's catalog
- epss
- 0.2%
- EPSS 0.2% chance of exploitation in 30 days, percentile 5%
- public exploits
- 0
- none known
Summary
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.
Patch / fix
- Linux Linux 5.4.300, 5.10.245, 5.15.194, 6.1.153, 6.6.107, 6.12.48, 6.16.8, 6.17
- linux Debian 12 6.1.153-1
- linux Debian 13 6.12.48-1
- linux Debian 14 6.16.8-1
debian advisories DEBIAN-CVE-2025-39911
- linux Ubuntu 22.04 LTS 5.15.0-170.180
- linux Ubuntu 24.04 LTS 6.8.0-106.106
- linux-aws Ubuntu 22.04 LTS 5.15.0-1100.107
- linux-aws Ubuntu 24.04 LTS 6.8.0-1050.53
- linux-gcp Ubuntu 22.04 LTS 5.15.0-1100.109
- linux-gcp Ubuntu 24.04 LTS 6.8.0-1052.55
- linux-gke Ubuntu 22.04 LTS 5.15.0-1096.102
- linux-gke Ubuntu 24.04 LTS 6.8.0-1048.53
ubuntu advisories UBUNTU-CVE-2025-39911
Ubuntu security data © Canonical Ltd., from https://github.com/canonical/ubuntu-security-notices via OSV; changed: normalised to fixed package versions per release. CC BY-SA 4.0
- kernel-rt Real Time Module 15 SP6, openSUSE Leap 15.6 6.4.0-150600.10.58.1
- kernel-syms-rt Real Time Module 15 SP6, openSUSE Leap 15.6 6.4.0-150600.10.58.1
- kernel-rt_debug Real Time Module 15 SP6, openSUSE Leap 15.6 6.4.0-150600.10.58.1
- kernel-source-rt Real Time Module 15 SP6, openSUSE Leap 15.6 6.4.0-150600.10.58.1
- kernel-rt Linux Micro 6.2 6.12.0-160000.7.1
- kernel-64kb SLES 16.0, Linux Micro 6.2, SLES for SAP applications 16.0 6.12.0-160000.7.1
- kernel-source SLES 16.0, Linux Micro 6.2, SLES for SAP applications 16.0 6.12.0-160000.7.1
- kernel-default SLES 16.0, SLE High Availability Extension 16.0, Linux Micro 6.2 +1 more 6.12.0-160000.7.1
suse advisories SUSE-SU-2025:4301-1SUSE-SU-2025:21080-1SUSE-SU-2025:21147-1SUSE-SU-2025:21180-1SUSE-SU-2026:20561-1SUSE-SU-2025:21052-1
- kernel-rt openSUSE Leap 16.0 6.12.0-160000.7.1
- dtb-aarch64 openSUSE Leap 16.0 6.12.0-160000.7.1
- kernel-64kb openSUSE Leap 16.0 6.12.0-160000.7.1
- kernel-syms openSUSE Leap 16.0 6.12.0-160000.7.1
- kernel-obs-qa openSUSE Leap 16.0 6.12.0-160000.7.1
- kernel-source openSUSE Leap 16.0 6.12.0-160000.7.1
- kernel-default openSUSE Leap 16.0 6.12.0-160000.7.1
- kernel-kvmsmall openSUSE Leap 16.0 6.12.0-160000.7.1
opensuse advisories openSUSE-SU-2025:20091-1
- kernel Azure Linux 3.0 6.6.112.1-1
- kernel CBL-Mariner 2.0 5.15.200.1-1
azure linux advisories AZL-68043AZL-74754
Azure Linux vulnerability data, Copyright (c) Microsoft Corporation, from https://github.com/microsoft/AzureLinuxVulnerabilityData via OSV, under the MIT licence; changed: normalised to fixed package versions per release. MIT
- git.kernel.org/stable/c/13ab9adef3cd386511c930a9660ae06595007f89 commit
- git.kernel.org/stable/c/6e4016c0dca53afc71e3b99e24252b63417395df commit
- git.kernel.org/stable/c/b9721a023df38cf44a88f2739b4cf51efd051f85 commit
- git.kernel.org/stable/c/b905b2acb3a0bbb08ad9be9984d8cdabdf827315 commit
- git.kernel.org/stable/c/23431998a37764c464737b855c71a81d50992e98 commit
- git.kernel.org/stable/c/a30afd6617c30aaa338d1dbcb1e34e7a1890085c commit
- git.kernel.org/stable/c/c62580674ce5feb1be4f90b5873ff3ce50e0a1db commit
- git.kernel.org/stable/c/915470e1b44e71d1dd07ee067276f003c3521ee3 commit
Is CVE-2025-39911 in your stack? Fencer shows which of your repositories are affected as soon as an advisory lands, and opens the fix as a pull request.
Check with FencerVendor advisories
What the vendors themselves say about their products: affected, fixed or not affected, and what to do.
red hat product security vex CVE-2025-39911 updated cvss 6.4
kernel: i40e: fix IRQ freeing in i40e_vsi_request_irq_msix error path
-
Red Hat Enterprise Linux 7 perf, kernel, bpftool, kernel-rt, python-perf, kernel-kdump, +8 more Red Hat Enterprise Linux 8 perf, kernel, bpftool, kernel-rt, kernel-core, kernel-tools, +29 more Red Hat Enterprise Linux 9 rv, perf, rtla, kernel, bpftool, libperf, +83 more Red Hat Enterprise Linux 10 kernelaffected: workaround, no fix available
-
Red Hat Enterprise Linux 6 perf, kernel, python-perf, kernel-kdump, kernel-firmware, kernel-bootwrapper, +1 morenot affected: vulnerable code not present
Red Hat CSAF VEX © Red Hat, Inc., from https://security.access.redhat.com/data/csaf/v2/vex/; changed: reduced to product statuses and remediations. CC BY 4.0 · csaf
CISA SSVC
- Exploitation
- none
- Automatable
- no
- Technical impact
- total
- Assessed
- 4mo ago
Exploit prediction
0.16% chance of exploitation in the next 30 days, higher than 5% of all scored CVEs (FIRST EPSS, 2026-11-09).
CVSS scores
| assigned by | version | score | vector |
|---|---|---|---|
| NVD | 3.1 | 7.8 | CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H |
Affected products
- Linux Linux
Classification
- Technology feeds
References
-
git.kernel.org
/stable/c/13ab9adef3cd386511c930a9660ae06595007f89
patch
-
git.kernel.org
/stable/c/6e4016c0dca53afc71e3b99e24252b63417395df
patch
-
git.kernel.org
/stable/c/b9721a023df38cf44a88f2739b4cf51efd051f85
patch
-
git.kernel.org
/stable/c/b905b2acb3a0bbb08ad9be9984d8cdabdf827315
patch
-
git.kernel.org
/stable/c/23431998a37764c464737b855c71a81d50992e98
patch
-
git.kernel.org
/stable/c/a30afd6617c30aaa338d1dbcb1e34e7a1890085c
patch
-
git.kernel.org
/stable/c/c62580674ce5feb1be4f90b5873ff3ce50e0a1db
patch
-
git.kernel.org
/stable/c/915470e1b44e71d1dd07ee067276f003c3521ee3
patch
-
lists.debian.org
/debian-lts-announce/2025/10/msg00008.html
third-party-advisory
Sources
- CVE List CVE-2025-39911
- NVD CVE-2025-39911
Fencer Intel keeps one entry per vulnerability: the CVE id wins, then GHSA, and records that alias each other are merged, except that two CVEs always keep separate entries. The same data is available as JSON.