CVE-2025-40219
Description
In the Linux kernel, the following vulnerability has been resolved: PCI/IOV: Fix race between SR-IOV enable/disable and hotplug Commit 05703271c3cd ("PCI/IOV: Add PCI rescan-remove locking when enabling/disabling SR-IOV") tried to fix a race between the VF removal inside sriov_del_vfs() and concurrent hot unplug by taking the PCI rescan/remove lock in sriov_del_vfs(). Similarly the PCI rescan/remove lock was also taken in sriov_add_vfs() to protect addition of VFs. This approach however causes deadlock on trying to remove PFs with SR-IOV enabled because PFs disable SR-IOV during removal and this removal happens under the PCI rescan/remove lock. So the original fix had to be reverted. Instead of taking the PCI rescan/remove lock in sriov_add_vfs() and sriov_del_vfs(), fix the race that occurs with SR-IOV enable and disable vs hotplug higher up in the callchain by taking the lock in sriov_numvfs_store() before calling into the driver's sriov_configure() callback.
How to fix
- Linux Linux3cddde484471c602bea04e6f384819d336a1ff84, d7673ac466eca37ec3e6b7cc9ccdb06de3304e9b, 7c37920c96b85ef4255a7acc795e99e63dd38d59, 1047ca2d816994f31e1475e63e0c0b7825599747, 97c18f074ff1c12d016a0753072a3afdfa0b9611, bea1d373098b22d7142da48750ce5526096425bc, f3015627b6e9ddf85cfeaf42405b3c194dde2c36, a5338e365c4559d7b4d7356116b0eb95b12e08d5 or later
Affected products
| Product | Affected versions | Fixed in |
|---|---|---|
| Linux Linux | 18f9e9d150fccfa747875df6f0a9f606740762b3 ≤ v < 3cddde484471c602bea04e6f384819d336a1ff84, 18f9e9d150fccfa747875df6f0a9f606740762b3 ≤ v < d7673ac466eca37ec3e6b7cc9ccdb06de3304e9b, 18f9e9d150fccfa747875df6f0a9f606740762b3 ≤ v < 7c37920c96b85ef4255a7acc795e99e63dd38d59, 18f9e9d150fccfa747875df6f0a9f606740762b3 ≤ v < 1047ca2d816994f31e1475e63e0c0b7825599747, 18f9e9d150fccfa747875df6f0a9f606740762b3 ≤ v < 97c18f074ff1c12d016a0753072a3afdfa0b9611, 18f9e9d150fccfa747875df6f0a9f606740762b3 ≤ v < bea1d373098b22d7142da48750ce5526096425bc, 18f9e9d150fccfa747875df6f0a9f606740762b3 ≤ v < f3015627b6e9ddf85cfeaf42405b3c194dde2c36, 18f9e9d150fccfa747875df6f0a9f606740762b3 ≤ v < a5338e365c4559d7b4d7356116b0eb95b12e08d5, 5.0 | 3cddde484471c602bea04e6f384819d336a1ff84, d7673ac466eca37ec3e6b7cc9ccdb06de3304e9b, 7c37920c96b85ef4255a7acc795e99e63dd38d59, 1047ca2d816994f31e1475e63e0c0b7825599747, 97c18f074ff1c12d016a0753072a3afdfa0b9611, bea1d373098b22d7142da48750ce5526096425bc, f3015627b6e9ddf85cfeaf42405b3c194dde2c36, a5338e365c4559d7b4d7356116b0eb95b12e08d5 |
Check your version
Choose the product and enter the version you run to see whether it falls in the affected range.
Attack Surface Management
See the assets tied to your domains, the technologies they run and known vulnerabilities in one list.