Vulnerability Details CVE-2026-43147
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.
Exploit prediction scoring system (EPSS) score
EPSS Score 0.0
EPSS Ranking 2.5%
CVSS Severity
CVSS v3 Score 5.5
Products affected by CVE-2026-43147
-
cpe:2.3:o:linux:linux_kernel:5.10.246
-
cpe:2.3:o:linux:linux_kernel:5.10.247
-
cpe:2.3:o:linux:linux_kernel:5.10.248
-
cpe:2.3:o:linux:linux_kernel:5.10.249
-
cpe:2.3:o:linux:linux_kernel:5.10.250
-
cpe:2.3:o:linux:linux_kernel:5.10.251
-
cpe:2.3:o:linux:linux_kernel:5.15.195
-
cpe:2.3:o:linux:linux_kernel:5.15.196
-
cpe:2.3:o:linux:linux_kernel:5.15.197
-
cpe:2.3:o:linux:linux_kernel:5.15.198
-
cpe:2.3:o:linux:linux_kernel:5.15.199
-
cpe:2.3:o:linux:linux_kernel:5.15.200
-
cpe:2.3:o:linux:linux_kernel:5.15.201
-
cpe:2.3:o:linux:linux_kernel:5.4.301
-
cpe:2.3:o:linux:linux_kernel:5.4.302
-
cpe:2.3:o:linux:linux_kernel:6.1.157
-
cpe:2.3:o:linux:linux_kernel:6.1.158
-
cpe:2.3:o:linux:linux_kernel:6.1.159
-
cpe:2.3:o:linux:linux_kernel:6.1.160
-
cpe:2.3:o:linux:linux_kernel:6.1.161
-
cpe:2.3:o:linux:linux_kernel:6.1.162
-
cpe:2.3:o:linux:linux_kernel:6.1.163
-
cpe:2.3:o:linux:linux_kernel:6.1.164
-
cpe:2.3:o:linux:linux_kernel:6.12.54
-
cpe:2.3:o:linux:linux_kernel:6.12.55
-
cpe:2.3:o:linux:linux_kernel:6.12.56
-
cpe:2.3:o:linux:linux_kernel:6.12.57
-
cpe:2.3:o:linux:linux_kernel:6.12.58
-
cpe:2.3:o:linux:linux_kernel:6.12.59
-
cpe:2.3:o:linux:linux_kernel:6.12.60
-
cpe:2.3:o:linux:linux_kernel:6.12.61
-
cpe:2.3:o:linux:linux_kernel:6.12.62
-
cpe:2.3:o:linux:linux_kernel:6.12.63
-
cpe:2.3:o:linux:linux_kernel:6.12.64
-
cpe:2.3:o:linux:linux_kernel:6.12.65
-
cpe:2.3:o:linux:linux_kernel:6.12.66
-
cpe:2.3:o:linux:linux_kernel:6.12.67
-
cpe:2.3:o:linux:linux_kernel:6.12.68
-
cpe:2.3:o:linux:linux_kernel:6.12.69
-
cpe:2.3:o:linux:linux_kernel:6.12.70
-
cpe:2.3:o:linux:linux_kernel:6.12.72
-
cpe:2.3:o:linux:linux_kernel:6.12.74
-
cpe:2.3:o:linux:linux_kernel:6.17.10
-
cpe:2.3:o:linux:linux_kernel:6.17.11
-
cpe:2.3:o:linux:linux_kernel:6.17.12
-
cpe:2.3:o:linux:linux_kernel:6.17.13
-
cpe:2.3:o:linux:linux_kernel:6.17.4
-
cpe:2.3:o:linux:linux_kernel:6.17.5
-
cpe:2.3:o:linux:linux_kernel:6.17.6
-
cpe:2.3:o:linux:linux_kernel:6.17.7
-
cpe:2.3:o:linux:linux_kernel:6.17.8
-
cpe:2.3:o:linux:linux_kernel:6.17.9
-
cpe:2.3:o:linux:linux_kernel:6.18
-
cpe:2.3:o:linux:linux_kernel:6.18.1
-
cpe:2.3:o:linux:linux_kernel:6.18.10
-
cpe:2.3:o:linux:linux_kernel:6.18.11
-
cpe:2.3:o:linux:linux_kernel:6.18.13
-
cpe:2.3:o:linux:linux_kernel:6.18.14
-
cpe:2.3:o:linux:linux_kernel:6.18.2
-
cpe:2.3:o:linux:linux_kernel:6.18.3
-
cpe:2.3:o:linux:linux_kernel:6.18.4
-
cpe:2.3:o:linux:linux_kernel:6.18.5
-
cpe:2.3:o:linux:linux_kernel:6.18.6
-
cpe:2.3:o:linux:linux_kernel:6.18.7
-
cpe:2.3:o:linux:linux_kernel:6.18.8
-
cpe:2.3:o:linux:linux_kernel:6.18.9
-
cpe:2.3:o:linux:linux_kernel:6.19
-
cpe:2.3:o:linux:linux_kernel:6.19.1
-
cpe:2.3:o:linux:linux_kernel:6.19.3
-
cpe:2.3:o:linux:linux_kernel:6.19.4
-
cpe:2.3:o:linux:linux_kernel:6.6.113
-
cpe:2.3:o:linux:linux_kernel:6.6.114
-
cpe:2.3:o:linux:linux_kernel:6.6.115
-
cpe:2.3:o:linux:linux_kernel:6.6.116
-
cpe:2.3:o:linux:linux_kernel:6.6.117
-
cpe:2.3:o:linux:linux_kernel:6.6.118
-
cpe:2.3:o:linux:linux_kernel:6.6.119
-
cpe:2.3:o:linux:linux_kernel:6.6.120
-
cpe:2.3:o:linux:linux_kernel:6.6.121
-
cpe:2.3:o:linux:linux_kernel:6.6.122
-
cpe:2.3:o:linux:linux_kernel:6.6.123
-
cpe:2.3:o:linux:linux_kernel:6.6.124
-
cpe:2.3:o:linux:linux_kernel:6.6.125
-
cpe:2.3:o:linux:linux_kernel:6.6.127