PCI: switchtec: Fix stdev_release() crash after surprise hot remove
A PCI device hot removal may occur while stdev->cdev is held open. The call
to stdev_release() then happens during close or exit, at a point way past
switchtec_pci_remove(). Otherwise the last ref would vanish with the
trailing put_device(), just before return.
At that later point in time, the devm cleanup has already removed the
stdev->mmio_mrpc mapping. Also, the stdev->pdev reference was not a counted
one. Therefore, in DMA mode, the iowrite32() in stdev_release() will cause
a fatal page fault, and the subsequent dma_free_coherent(), if reached,
would pass a stale &stdev->pdev->dev pointer.
Fix by moving MRPC DMA shutdown into switchtec_pci_remove(), after
stdev_kill(). Counting the stdev->pdev ref is now optional, but may prevent
future accidents.
Reproducible via the script at
https://lore.kernel.org/r/20231113212150.96410-1-dns@arista.com
Analysis and contextual insights are available on OpenCVE Cloud.
No vendor fix or workaround currently provided.
Additional remediation guidance may be available on OpenCVE Cloud.
Tracking
Sign in to view the affected projects.
| Source | ID | Title |
|---|---|---|
Debian DLA |
DLA-3842-1 | linux-5.10 security update |
Debian DSA |
DSA-5658-1 | linux security update |
Debian DSA |
DSA-5681-1 | linux security update |
Ubuntu USN |
USN-6766-1 | Linux kernel vulnerabilities |
Ubuntu USN |
USN-6766-2 | Linux kernel vulnerabilities |
Ubuntu USN |
USN-6766-3 | Linux kernel (AWS) vulnerabilities |
Ubuntu USN |
USN-6767-1 | Linux kernel vulnerabilities |
Ubuntu USN |
USN-6767-2 | Linux kernel (BlueField) vulnerabilities |
Ubuntu USN |
USN-6795-1 | Linux kernel (Intel IoTG) vulnerabilities |
Ubuntu USN |
USN-6818-1 | Linux kernel vulnerabilities |
Ubuntu USN |
USN-6818-2 | Linux kernel (ARM laptop) vulnerabilities |
Ubuntu USN |
USN-6818-3 | Linux kernel (NVIDIA) vulnerabilities |
Ubuntu USN |
USN-6818-4 | Linux kernel (HWE) vulnerabilities |
Ubuntu USN |
USN-6819-1 | Linux kernel vulnerabilities |
Ubuntu USN |
USN-6819-2 | Linux kernel vulnerabilities |
Ubuntu USN |
USN-6819-3 | Linux kernel (OEM) vulnerabilities |
Ubuntu USN |
USN-6819-4 | Linux kernel (Oracle) vulnerabilities |
Ubuntu USN |
USN-6828-1 | Linux kernel (Intel IoTG) vulnerabilities |
Tue, 08 Apr 2025 15:45:00 +0000
| Type | Values Removed | Values Added |
|---|---|---|
| First Time appeared |
Debian
Debian debian Linux Linux Linux linux Kernel |
|
| Weaknesses | CWE-459 | |
| CPEs | cpe:2.3:o:debian:debian_linux:10.0:*:*:*:*:*:*:* cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:* |
|
| Vendors & Products |
Debian
Debian debian Linux Linux Linux linux Kernel |
Fri, 22 Nov 2024 12:00:00 +0000
| Type | Values Removed | Values Added |
|---|---|---|
| References |
|
Mon, 04 Nov 2024 13:45:00 +0000
| Type | Values Removed | Values Added |
|---|---|---|
| References |
|
Thu, 31 Oct 2024 15:15:00 +0000
| Type | Values Removed | Values Added |
|---|---|---|
| Metrics |
ssvc
|
Status: PUBLISHED
Assigner: Linux
Published:
Updated: 2026-05-11T19:30:26.843Z
Reserved: 2024-03-06T09:52:12.089Z
Link: CVE-2023-52617
Updated: 2024-08-02T23:03:21.360Z
Status : Analyzed
Published: 2024-03-18T11:15:09.057
Modified: 2025-04-08T15:26:38.597
Link: CVE-2023-52617
OpenCVE Enrichment
No data.
Debian DLA
Debian DSA
Ubuntu USN