CVE Vulnerabilities

CVE-2026-68318

Published: Aug 10, 2026 | Modified: Aug 10, 2026
CVSS 3.x
N/A
Source:
NVD
CVSS 2.x
RedHat/V2
RedHat/V3
Ubuntu
root.io logo minimus.io logo echo.ai logo

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

pds_core: fix use-after-free on workqueue during remove

In pdsc_remove(), the workqueue is destroyed before pdsc_teardown() is called. This ordering allows two paths to queue work on the destroyed workqueue:

  1. If pdsc_teardown() -> pdsc_devcmd_reset() times out, the error path in pdsc_devcmd_locked() queues health_work.

  2. A NotifyQ event can trigger the ISR and queue work before free_irq() is called in pdsc_teardown().

Fix by moving destroy_workqueue() after pdsc_teardown() so the workqueue outlives every queuer; destroy_workqueue() then flushes any work still pending.

Draining the queued work also requires ordering the teardown so the resources that work touches are freed last:

  • In pdsc_qcq_free(), after freeing the interrupt, cancel_work_sync() the queues work and only then clear qcq->intx, so pdsc_process_adminq()s read of qcq->intx for interrupt-credit return cannot race with the clear.

  • Free adminqcq before notifyqcq: the shared adminq ISR is released when adminqcq is freed, and the adminq work accesses notifyqcq, so both must be stopped before notifyqcq is freed.

References