CVE-2026-43147 Details
Description
In the Linux kernel, the following vulnerability has been resolved: Revert "PCI/IOV: Add PCI rescan-remove locking when enabling/disabling SR-IOV" This reverts commit 05703271c3cd ("PCI/IOV: Add PCI rescan-remove locking when enabling/disabling SR-IOV"), which causes a deadlock by recursively taking pci_rescan_remove_lock when sriov_del_vfs() is called as part of pci_stop_and_remove_bus_device(). For example with the following sequence of commands: $ echo <NUM> > /sys/bus/pci/devices/<pf>/sriov_numvfs $ echo 1 > /sys/bus/pci/devices/<pf>/remove A trimmed trace of the deadlock on a mlx5 device is as below: zsh/5715 is trying to acquire lock: 000002597926ef50 (pci_rescan_remove_lock){+.+.}-{3:3}, at: sriov_disable+0x34/0x140 but task is already holding lock: 000002597926ef50 (pci_rescan_remove_lock){+.+.}-{3:3}, at: pci_stop_and_remove_bus_device_locked+0x24/0x80 ... Call Trace: [<00000259778c4f90>] dump_stack_lvl+0xc0/0x110 [<00000259779c844e>] print_deadlock_bug+0x31e/0x330 [<00000259779c1908>] __lock_acquire+0x16c8/0x32f0 [<00000259779bffac>] lock_acquire+0x14c/0x350 [<00000259789643a6>] __mutex_lock_common+0xe6/0x1520 [<000002597896413c>] mutex_lock_nested+0x3c/0x50 [<00000259784a07e4>] sriov_disable+0x34/0x140 [<00000258f7d6dd80>] mlx5_sriov_disable+0x50/0x80 [mlx5_core] [<00000258f7d5745e>] remove_one+0x5e/0xf0 [mlx5_core] [<00000259784857fc>] pci_device_remove+0x3c/0xa0 [<000002597851012e>] device_release_driver_internal+0x18e/0x280 [<000002597847ae22>] pci_stop_bus_device+0x82/0xa0 [<000002597847afce>] pci_stop_and_remove_bus_device_locked+0x5e/0x80 [<00000259784972c2>] remove_store+0x72/0x90 [<0000025977e6661a>] kernfs_fop_write_iter+0x15a/0x200 [<0000025977d7241c>] vfs_write+0x24c/0x300 [<0000025977d72696>] ksys_write+0x86/0x110 [<000002597895b61c>] __do_syscall+0x14c/0x400 [<000002597896e0ee>] system_call+0x6e/0x90 This alone is not a complete fix as it restores the issue the cited commit tried to solve. A new fix will be provided as a follow on.
A deadlock vulnerability has been identified in the Linux kernel's PCI SR-IOV handling. This issue arises from the improper management of locking mechanisms when enabling or disabling SR-IOV, particularly with certain network devices. The vulnerability is present in the Linux kernel stable tree and affects various versions within this tree. The deadlock occurs because the 'pci_rescan_remove_lock' is recursively engaged, creating a conflict when virtual functions are removed as part of the device's shutdown process. This problem can be reproduced by manipulating the SR-IOV virtual function settings of a PCI device, such as a Mellanox ConnectX-5 network card.
The vulnerability has been addressed in the Linux kernel stable tree. Users should upgrade to the latest version available in this branch.
Metrics
CVSS 4.0 Severity and Vector Strings:
No CVSS 4.0 data is available for this CVE.
CVSS 3.x Severity and Vector Strings:
No data available for CVSS Version 2.0 on this CVE.
No SSVC data is available for this CVE.
References to Advisories, Solutions, and Tools
By selecting these links, you will be leaving this site. These are references gathered from the official CVE record and are not endorsed by Volerion.
| URL | Source(s) | Tag(s) |
|---|---|---|
| https://git.kernel.org/stable/c/0de341b2365bad430aade0853fe09c2cbe468f59 | kernel.org | Patch |
| https://git.kernel.org/stable/c/2fa119c0e5e528453ebae9e70740e8d2d8c0ed5a | kernel.org | Patch |
| https://git.kernel.org/stable/c/40f67686a5002c0c322fac918406bbc8d9c2ec2f | kernel.org | Patch |
| https://git.kernel.org/stable/c/58677783c89681871077f50a7042b0c6380c4fd8 | kernel.org | Patch |
| https://git.kernel.org/stable/c/639265296fe6ee21b6f00e00ee2bab65f3b07252 | kernel.org | Patch |
| https://git.kernel.org/stable/c/83651d37474c762920e345a3a0828f975ca4d732 | kernel.org | Patch |
| https://git.kernel.org/stable/c/d47f27e145f8bd13f3c230da5e3af29225b4a2f7 | kernel.org | Patch |
| https://git.kernel.org/stable/c/f61cdd7e9b67bb8961b0a81bf294b78343e5db05 | kernel.org | Patch |
Weakness Enumeration
| CWE-ID | CWE Name | Source |
|---|---|---|
| CWE-667 | Improper Locking | [email protected] |
Affected Products
| Product | Versions |
|---|---|
| linux linux kernel | >= 5.4.301, < 5.5 >= 5.10.246, < 5.10.252 >= 5.15.195, < 5.15.202 >= 6.1.157, < 6.1.165 >= 6.6.113, < 6.6.128 >= 6.12.54, < 6.12.75 >= 6.17.4, < 6.18.16 >= 6.19, < 6.19.6 |
CPE
Remediation
| |
Change History
3 change records found show changes
| Date | Action | Recorded By |
|---|---|---|
| Jun 17, 2026 | CVE Modified | kernel.org |
| May 13, 2026 | Initial Analysis | [email protected] |
| May 6, 2026 | New CVE Received | kernel.org |