CVE-2025-23161
CVE.org · Published
- Record status
- Published
- Identifier year (not publication year)
- 2025
- Source publication
- Source updated
- Imported by cveboard
- Source snapshot
- cve_2026-10-24_midnight_baseline ·
CNA source text (English)
PCI: vmd: Make vmd_dev::cfg_lock a raw_spinlock_t type
In the Linux kernel, the following vulnerability has been resolved: PCI: vmd: Make vmd_dev::cfg_lock a raw_spinlock_t type The access to the PCI config space via pci_ops::read and pci_ops::write is a low-level hardware access. The functions can be accessed with disabled interrupts even on PREEMPT_RT. The pci_lock is a raw_spinlock_t for this purpose. A spinlock_t becomes a sleeping lock on PREEMPT_RT, so it cannot be acquired with disabled interrupts. The vmd_dev::cfg_lock is accessed in the same context as the pci_lock. Make vmd_dev::cfg_lock a raw_spinlock_t type so it can be used with interrupts disabled. This was reported as: BUG: sleeping function called from invalid context at kernel/locking/spinlock_rt.c:48 Call Trace: rt_spin_lock+0x4e/0x130 vmd_pci_read+0x8d/0x100 [vmd] pci_user_read_config_byte+0x6f/0xe0 pci_read_config+0xfe/0x290 sysfs_kf_bin_read+0x68/0x90 [bigeasy: reword commit message] Tested-off-by: Luis Claudio R. Goncalves <lgoncalv@redhat.com> [kwilczynski: commit log] [bhelgaas: add back report info from https://lore.kernel.org/lkml/20241218115951.83062-1-ryotkkr98@gmail.com/]
Scoped product and version facts
Fix information unknown; no fixed version is derived here. Missing information does not prove that no fix exists.
Exploitation unknown; this catalogue does not assess exploitation.
Linux
- Vendor
- Linux
- Product
- Linux
- Platforms
- Unknown
- Default status
unaffected
| Version (version) | Status (status) | Version scheme (versionType) | Exclusive end (lessThan) | Inclusive end (lessThanOrEqual) | Status changes (at → status) |
|---|---|---|---|---|---|
| 185a383ada2e7794b0e82e040223e741b24d2bf8 | affected | git | c250262d6485ca333e9821f85b07eb383ec546b1 | Unavailable | None listed |
| 185a383ada2e7794b0e82e040223e741b24d2bf8 | affected | git | c2968c812339593ac6e2bdd5cc3adabe3f05fa53 | Unavailable | None listed |
| 185a383ada2e7794b0e82e040223e741b24d2bf8 | affected | git | 13e5148f70e81991acbe0bab5b1b50ba699116e7 | Unavailable | None listed |
| 185a383ada2e7794b0e82e040223e741b24d2bf8 | affected | git | 5c3cfcf0b4bf43530788b08a8eaf7896ec567484 | Unavailable | None listed |
| 185a383ada2e7794b0e82e040223e741b24d2bf8 | affected | git | 2358046ead696ca5c7c628d6c0e2c6792619a3e5 | Unavailable | None listed |
| 185a383ada2e7794b0e82e040223e741b24d2bf8 | affected | git | 20d0a9062c031068fa39f725a32f182b709b5525 | Unavailable | None listed |
| 185a383ada2e7794b0e82e040223e741b24d2bf8 | affected | git | 18056a48669a040bef491e63b25896561ee14d90 | Unavailable | None listed |
Linux
- Vendor
- Linux
- Product
- Linux
- Platforms
- Unknown
- Default status
affected
| Version (version) | Status (status) | Version scheme (versionType) | Exclusive end (lessThan) | Inclusive end (lessThanOrEqual) | Status changes (at → status) |
|---|---|---|---|---|---|
| 4.5 | affected | Unavailable | Unavailable | Unavailable | None listed |
| 0 | unaffected | semver | 4.5 | Unavailable | None listed |
| 5.15.181 | unaffected | semver | Unavailable | 5.15.* | None listed |
| 6.1.135 | unaffected | semver | Unavailable | 6.1.* | None listed |
| 6.6.88 | unaffected | semver | Unavailable | 6.6.* | None listed |
| 6.12.24 | unaffected | semver | Unavailable | 6.12.* | None listed |
| 6.13.12 | unaffected | semver | Unavailable | 6.13.* | None listed |
| 6.14.3 | unaffected | semver | Unavailable | 6.14.* | None listed |
| 6.15 | unaffected | original_commit_for_fix | Unavailable | * | None listed |