CVE-2025-37946

Source
https://nvd.nist.gov/vuln/detail/CVE-2025-37946
Import Source
https://storage.googleapis.com/osv-test-cve-osv-conversion/osv-output/CVE-2025-37946.json
JSON Data
https://api.test.osv.dev/v1/vulns/CVE-2025-37946
Downstream
Related
Published
2025-05-20T16:01:43Z
Modified
2025-10-10T10:46:06.808138Z
Summary
s390/pci: Fix duplicate pci_dev_put() in disable_slot() when PF has child VFs
Details

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

s390/pci: Fix duplicate pcidevput() in disable_slot() when PF has child VFs

With commit bcb5d6c76903 ("s390/pci: introduce lock to synchronize state of zpcidev's") the code to ignore power off of a PF that has child VFs was changed from a direct return to a goto to the unlock and pcidevput() section. The change however left the existing pcidevput() untouched resulting in a doubple put. This can subsequently cause a use after free if the struct pcidev is released in an unexpected state. Fix this by removing the extra pcidevput().

References

Affected packages

Git / git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git

Affected ranges

Type
GIT
Repo
https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git
Events
Introduced
bcb5d6c769039c8358a2359e7c3ea5d97ce93108
Fixed
c488f8b53e156d6dcc0514ef0afa3a33376b8f9e
Type
GIT
Repo
https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git
Events
Introduced
bcb5d6c769039c8358a2359e7c3ea5d97ce93108
Fixed
957529baef142d95e0d1b1bea786675bd47dbe53
Type
GIT
Repo
https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux.git
Events
Introduced
bcb5d6c769039c8358a2359e7c3ea5d97ce93108
Fixed
05a2538f2b48500cf4e8a0a0ce76623cc5bafcf1

Affected versions

v6.*

v6.10
v6.10-rc1
v6.10-rc2
v6.10-rc3
v6.10-rc4
v6.10-rc5
v6.10-rc6
v6.10-rc7
v6.11
v6.11-rc1
v6.11-rc2
v6.11-rc3
v6.11-rc4
v6.11-rc5
v6.11-rc6
v6.11-rc7
v6.12
v6.12-rc1
v6.12-rc2
v6.12-rc3
v6.12-rc4
v6.12-rc5
v6.12-rc6
v6.12-rc7
v6.12.1
v6.12.10
v6.12.11
v6.12.12
v6.12.13
v6.12.14
v6.12.15
v6.12.16
v6.12.17
v6.12.18
v6.12.19
v6.12.2
v6.12.20
v6.12.21
v6.12.22
v6.12.23
v6.12.24
v6.12.25
v6.12.26
v6.12.27
v6.12.28
v6.12.3
v6.12.4
v6.12.5
v6.12.6
v6.12.7
v6.12.8
v6.12.9
v6.13
v6.13-rc1
v6.13-rc2
v6.13-rc3
v6.13-rc4
v6.13-rc5
v6.13-rc6
v6.13-rc7
v6.14
v6.14-rc1
v6.14-rc2
v6.14-rc3
v6.14-rc4
v6.14-rc5
v6.14-rc6
v6.14-rc7
v6.14.1
v6.14.2
v6.14.3
v6.14.4
v6.14.5
v6.14.6
v6.15-rc1
v6.15-rc2
v6.8
v6.8-rc4
v6.8-rc5
v6.8-rc6
v6.8-rc7
v6.9
v6.9-rc1
v6.9-rc2
v6.9-rc3
v6.9-rc4
v6.9-rc5
v6.9-rc6
v6.9-rc7

Linux / Kernel

Package

Name
Kernel

Affected ranges

Type
ECOSYSTEM
Events
Introduced
6.9.0
Fixed
6.12.29
Type
ECOSYSTEM
Events
Introduced
6.13.0
Fixed
6.14.7