---
id: CVE-2026-98691
title: 'thunderbolt: Tear down inactive DP tunnels when the domain is stopped'
summary: |-
  In the Linux kernel, the following vulnerability has been resolved:

  thunderbolt: Tear down inactive DP tunnels when the domain is stopped

  tb_stop() only tears down DMA tunnels so a DP tunnel that is still
  waiting for dprx_work to compl…
severity: none
vendor: Linux
product: Linux
affected:
  - >-
    Linux >= d6d458d42e1e1544a18f37f1d5c840e00d5261b9 <
    34a6e27c954e5bfc29fead17867c7155d54b6481
  - >-
    Linux >= d6d458d42e1e1544a18f37f1d5c840e00d5261b9 <
    cbd2abb85ea32cafdcbaba218e13b18d8ed79bfa
  - >-
    Linux >= d6d458d42e1e1544a18f37f1d5c840e00d5261b9 <
    0b457c6733f73421a3fb03786f13d67c618b5119
  - Linux 6.14
published: '2026-10-18'
updated: '2026-10-18'
sourceUpdated: '2026-10-18T15:46:15.299Z'
source: CVEORG
sourceUrl: 'https://www.cve.org/CVERecord?id=CVE-2026-98691'
references:
  - url: 'https://git.kernel.org/stable/c/34a6e27c954e5bfc29fead17867c7155d54b6481'
  - url: 'https://git.kernel.org/stable/c/cbd2abb85ea32cafdcbaba218e13b18d8ed79bfa'
  - url: 'https://git.kernel.org/stable/c/0b457c6733f73421a3fb03786f13d67c618b5119'
tags:
  - cve.org
ingestedAt: '2026-10-18T16:47:32.518Z'
---

## Overview

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

thunderbolt: Tear down inactive DP tunnels when the domain is stopped

tb_stop() only tears down DMA tunnels so a DP tunnel that is still
waiting for dprx_work to complete keeps that work queued while the
routers are removed and the control channel is stopped. The work only
stops once the DPRX timeout has passed and because it requeues itself
until then the flush_workqueue() in tb_domain_remove() won't wait for its
final run. The callback then runs against a domain that is already torn
down. A reference to that domain is kept so the completion waiting for
that domain to disappear in unbind will block until the timeout is
eventually reached.

Tear down DP tunnels that are not active yet as well which also cancels
that work. Tunnels for displays that are already alive are untouched and
keep working.

## Affected

- `Linux >= d6d458d42e1e1544a18f37f1d5c840e00d5261b9 < 34a6e27c954e5bfc29fead17867c7155d54b6481`
- `Linux >= d6d458d42e1e1544a18f37f1d5c840e00d5261b9 < cbd2abb85ea32cafdcbaba218e13b18d8ed79bfa`
- `Linux >= d6d458d42e1e1544a18f37f1d5c840e00d5261b9 < 0b457c6733f73421a3fb03786f13d67c618b5119`
- `Linux 6.14`

## Remediation

Refer to the linked advisories for vendor-supplied fixes and affected version ranges.
