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

pds_core: fix deadlock between reset thread and remove

pci_reset_function() acquires device_lock before performing the reset.
pdsc_remove() is called by the PCI core with device_lock already held.
If pdsc_pci_reset_thread() is running when pdsc_remove() is called,
destroy_workqueue() will block waiting for the work to complete, while
the work is blocked waiting for device_lock - deadlock.

Use pci_try_reset_function() which uses pci_dev_trylock() internally.
This acquires both the device lock and the PCI config access lock
without blocking - if either lock is contended, it returns -EAGAIN
immediately. This avoids the deadlock while also ensuring proper
config space access serialization during the reset.

The pci_dev_get/put calls are also removed as they were unnecessary -
the driver-owned workqueue is destroyed in pdsc_remove(), guaranteeing
the work completes before remove returns. The PCI core holds its
reference to pci_dev throughout the entire unbind sequence.
Published: 2026-08-10
Score: 4.1 Medium
EPSS: < 1% Very Low
KEV: No
Impact: n/a
Action: n/a
AI Analysis

Impact

A deadlock can arise in the Linux kernel when a PCI device reset thread holds a device lock and concurrently a device removal routine is invoked by the PCI core while already holding that same lock. The reset thread waits for the lock to release before completing, while the removal routine waits for the thread to finish, resulting in a state where neither side can proceed. This internal kernel condition can cause the kernel to become unresponsive or freeze without any observable user‑level impact. The fix replaces the blocking lock acquisition with a non‑blocking try‑lock, allowing the kernel to immediately back away if the lock is contended and preventing the deadlock. Based on the description, it is inferred that the attack vector is limited to privileged kernel context; the fault cannot be triggered from user space and requires normal PCI device operation that results in reset and removal. The vulnerability is a classic resource‑ordering issue (CWE‑424) and an operation on a resource in an inconsistent state (CWE‑833).

Affected Systems

All Linux kernel releases that include the pds_core driver before the application of the commit referenced in the CVE details. Specific kernel versions are not listed in the data, so the coverage is broad across any kernel that contains the affected module prior to the patch commit.

Risk and Exploitability

The CVSS score of 4.1 indicates low severity, and the EPSS score of < 1% reflects a very low likelihood of exploitation in the wild. The vulnerability is not listed in the CISA KEV catalog, further underscoring its limited exposure. Because triggering the deadlock requires normal device reset and removal sequences within the kernel, it is considered a local kernel‑level issue that can lead to a denial‑of‑service via kernel freeze rather than a compromise of confidentiality or integrity.

Generated by OpenCVE AI on August 13, 2026 at 04:46 UTC.

Remediation

No vendor fix or workaround currently provided.

OpenCVE Recommended Actions

  • Update the kernel to a version that incorporates the pds_core deadlock fix commit
  • If a patched kernel is unavailable from your distribution, fetch the upstream kernel source that contains the referenced commit and rebuild your kernel ensuring the pci_try_reset_function change is present
  • Validate that the rebuilt kernel loads the pds_core driver without requiring the removed pci_dev_get/put calls, confirming that no dependent modules fail due to the change

Generated by OpenCVE AI on August 13, 2026 at 04:46 UTC.

Tracking

Sign in to view the affected projects.

Advisories
Source ID Title
Debian DLA Debian DLA DLA-4745-1 linux-6.12 security update
History

Wed, 12 Aug 2026 00:15:00 +0000

Type Values Removed Values Added
Weaknesses CWE-833
References
Metrics threat_severity

None

cvssV3_1

{'score': 4.1, 'vector': 'CVSS:3.1/AV:L/AC:H/PR:H/UI:N/S:U/C:N/I:N/A:H'}

threat_severity

Moderate


Mon, 10 Aug 2026 15:30:00 +0000

Type Values Removed Values Added
Weaknesses CWE-424

Mon, 10 Aug 2026 12:30:00 +0000

Type Values Removed Values Added
Description In the Linux kernel, the following vulnerability has been resolved: pds_core: fix deadlock between reset thread and remove pci_reset_function() acquires device_lock before performing the reset. pdsc_remove() is called by the PCI core with device_lock already held. If pdsc_pci_reset_thread() is running when pdsc_remove() is called, destroy_workqueue() will block waiting for the work to complete, while the work is blocked waiting for device_lock - deadlock. Use pci_try_reset_function() which uses pci_dev_trylock() internally. This acquires both the device lock and the PCI config access lock without blocking - if either lock is contended, it returns -EAGAIN immediately. This avoids the deadlock while also ensuring proper config space access serialization during the reset. The pci_dev_get/put calls are also removed as they were unnecessary - the driver-owned workqueue is destroyed in pdsc_remove(), guaranteeing the work completes before remove returns. The PCI core holds its reference to pci_dev throughout the entire unbind sequence.
Title pds_core: fix deadlock between reset thread and remove
First Time appeared Linux
Linux linux Kernel
CPEs cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*
Vendors & Products Linux
Linux linux Kernel
References

Subscriptions

Linux Linux Kernel
cve-icon MITRE

Status: PUBLISHED

Assigner: Linux

Published:

Updated: 2026-08-17T05:03:16.659Z

Reserved: 2026-07-30T09:28:09.382Z

Link: CVE-2026-68319

cve-icon Vulnrichment

No data.

cve-icon NVD

Status : Received

Published: 2026-08-10T13:20:21.933

Modified: 2026-08-17T05:18:34.827

Link: CVE-2026-68319

cve-icon Redhat

Severity : Moderate

Publid Date: 2026-08-10T12:02:54Z

Links: CVE-2026-68319 - Bugzilla

cve-icon OpenCVE Enrichment

Updated: 2026-08-13T05:00:10Z

Weaknesses