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

thunderbolt: Fix domain reference leak when DPRX read is canceled

tb_tunnel_one_dp() takes a domain reference which is only dropped once
tb_dp_tunnel_active() has run on the work queue. If that work is
cancelled that reference is leaked. Since
commit f5cc545f5969 ("thunderbolt: Wait for tb_domain_release() to
complete when driver is removed") instead of just leaking memory this
now also blocks in the completion wait forever when unbinding the
driver.

This can be triggered whenever a DP tunnel is torn down before the DPRX
read has completed, e.g. by unplugging within the timeout, and then
unbinding the driver.

That reference only exists to keep the domain around while the DPRX work
is scheduled so let the work itself own it: take it in tb_dp_dprx_start()
and drop it in both places that end the work. Get/put are then paired
inside the same file and it doesn't matter anymore if the callback ever
runs.
Published: 2026-10-18
Score: n/a
EPSS: n/a
KEV: No
Impact: Denial of Service via resource leak and deadlock
Action: Apply Update
AI Analysis

Impact

The Linux thunderbolt driver contained a flaw where a domain reference acquired for a DP tunnel was released only in one execution path. If the associated DPRX read is canceled, the work queue task aborts and the reference is never freed, creating a leak. When the driver is later unbound, the kernel stalls waiting for a completion that never completes, effectively locking the driver and potentially the system. An attacker could trigger the scenario by unplugging a thunderbolt device during its setup period before the DPRX read finishes, resulting in a denial‑of‑service.

Affected Systems

This issue affects the Linux kernel’s thunderbolt subsystem. The CNA data lists the vendor as Linux with no specific version range provided, implying all kernel releases that contain the thunderbolt driver (the mainline kernel and derived distributions) are potentially vulnerable. No product alias or version restriction is disclosed in the available data.

Risk and Exploitability

The CVSS score is not available, the EPSS score is unavailable, and the vulnerability is not listed in CISA KEV. The flaw requires physical unplugging of a thunderbolt device while a read operation is in flight, which is feasible for local or supervisory attackers but less likely to be exploited remotely. The potential impact is a local denial‑of‑service that could affect unattended or critical systems. Given the kernel nature of the flaw, a patch from the vendor is the most reliable defense rather than misconfiguration or temporary workarounds.

Generated by OpenCVE AI on October 18, 2026 at 19:36 UTC.

Remediation

No solution or workaround provided in the CVE record.

OpenCVE Recommended Actions

  • Update the kernel to a version that contains the thunderbolt reference count fix.
  • Verify that the thunderbolt driver is enabled only on trusted hardware and disable it on systems that do not require the feature.
  • If a patch is unavailable, avoid unplugging thunderbolt devices during the DP tunnel setup period and delay driver unbinding until all read operations complete.
  • Monitor kernel logs for blocked completions and scheduled work items related to thunderbolt to detect the issue early.

Generated by OpenCVE AI on October 18, 2026 at 19:36 UTC.

Tracking

Sign in to view the affected projects.

Advisories

No advisories yet.

History

Sun, 18 Oct 2026 20:15:00 +0000

Type Values Removed Values Added
Weaknesses CWE-754

Sun, 18 Oct 2026 16:00:00 +0000

Type Values Removed Values Added
Description In the Linux kernel, the following vulnerability has been resolved: thunderbolt: Fix domain reference leak when DPRX read is canceled tb_tunnel_one_dp() takes a domain reference which is only dropped once tb_dp_tunnel_active() has run on the work queue. If that work is cancelled that reference is leaked. Since commit f5cc545f5969 ("thunderbolt: Wait for tb_domain_release() to complete when driver is removed") instead of just leaking memory this now also blocks in the completion wait forever when unbinding the driver. This can be triggered whenever a DP tunnel is torn down before the DPRX read has completed, e.g. by unplugging within the timeout, and then unbinding the driver. That reference only exists to keep the domain around while the DPRX work is scheduled so let the work itself own it: take it in tb_dp_dprx_start() and drop it in both places that end the work. Get/put are then paired inside the same file and it doesn't matter anymore if the callback ever runs.
Title thunderbolt: Fix domain reference leak when DPRX read is canceled
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-10-18T15:46:13.825Z

Reserved: 2026-09-25T10:25:14.364Z

Link: CVE-2026-98690

cve-icon Vulnrichment

No data.

cve-icon NVD

Status : Received

Published: 2026-10-18T16:17:22.423

Modified: 2026-10-18T16:17:22.423

Link: CVE-2026-98690

cve-icon Redhat

No data.

cve-icon OpenCVE Enrichment

Updated: 2026-10-18T20:00:12Z

Weaknesses
  • CWE-754

    Improper Check for Unusual or Exceptional Conditions