tipc: destroy topsrv workqueues before closing connections
Summary
| CVE | CVE-2026-99054 |
|---|---|
| State | PUBLISHED |
| Assigner | Linux |
| Source Priority | CVE Program / NVD first with legacy fallback |
| Published | 2026-10-23 13:17:29 UTC |
| Updated | 2026-10-24 14:16:54 UTC |
| Description | In the Linux kernel, the following vulnerability has been resolved: tipc: destroy topsrv workqueues before closing connections tipc_topsrv_stop() closed subscriber connections while the topology server's send and receive workqueues were still running. Socket callbacks and subscription events could then queue more work, and in-flight send/recv work could drop the last connection reference during the conn_idr walk. That race produced several teardown failures: refcount_t addition on 0 from conn_get() on a connection whose release was blocked on idr_lock, a subsequent use-after-free in tipc_conn_close(), queue_work() on an already destroyed workqueue from the listener data-ready callback, and an RCU stall in tipc_topsrv_exit_net() while the walk spun under idr_lock. Clear srv->listener under idr_lock so it acts as a shutdown flag, skip queue_work() once it is NULL, destroy the workqueues to flush in-flight work, and only then close the remaining connections. Refuse tipc_conn_lookup() after that flag is cleared, and drop idr_lock when the teardown walk finds no connection, so an in-flight subscription event cannot pin idr_in_use while the walk holds the lock. v3 supersedes the narrower in-thread diff Tung Quang Nguyen posted on 2026-09-23. It keeps his teardown order and adds the lookup refusal and the empty-idr unlock. |
Risk And Classification
Primary CVSS: v3.1 7.8 HIGH from 416baaa9-dc9f-4396-8d5f-8c081fb06d67
CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H
| Version | Source | Type | Score | Severity | Vector |
|---|---|---|---|---|---|
| 3.1 | 416baaa9-dc9f-4396-8d5f-8c081fb06d67 | Secondary | 7.8 | HIGH | CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H |
| 3.1 | CNA | DECLARED | 7.8 | HIGH | CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H |
CVSS v3.1 Breakdown
Attack Vector
LocalAttack Complexity
LowPrivileges Required
LowUser Interaction
NoneScope
UnchangedConfidentiality
HighIntegrity
HighAvailability
HighCVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H
Vendor Declared Affected Products
| Source | Vendor | Product | Version | Platforms |
|---|---|---|---|---|
| CNA | Linux | Linux | affected c5fa7b3cf3cb22e4ac60485fc2dc187fe012910f 7f796bb3b440d7f1b14c0e3b520462eb34f553af git | Not specified |
| CNA | Linux | Linux | affected c5fa7b3cf3cb22e4ac60485fc2dc187fe012910f da9c16568bc79140a54c1f5fcf07a0305df47b37 git | Not specified |
| CNA | Linux | Linux | affected c5fa7b3cf3cb22e4ac60485fc2dc187fe012910f 0af8780bdfdfc91fb9127bddb9c48fab67dc9d9e git | Not specified |
| CNA | Linux | Linux | affected c5fa7b3cf3cb22e4ac60485fc2dc187fe012910f fb717c536af2aafeca520ff11d1e0f25f7ab8fa9 git | Not specified |
| CNA | Linux | Linux | affected c5fa7b3cf3cb22e4ac60485fc2dc187fe012910f 3acdd44385bc7e2e57605e073691ce69cc5a960d git | Not specified |
| CNA | Linux | Linux | affected 3.11 | Not specified |
| CNA | Linux | Linux | unaffected 3.11 semver | Not specified |
| CNA | Linux | Linux | unaffected 6.6.160 6.6.* semver | Not specified |
| CNA | Linux | Linux | unaffected 6.12.113 6.12.* semver | Not specified |
| CNA | Linux | Linux | unaffected 6.18.57 6.18.* semver | Not specified |
| CNA | Linux | Linux | unaffected 7.2.11 7.2.* semver | Not specified |
| CNA | Linux | Linux | unaffected 7.3 * original_commit_for_fix | Not specified |
References
| Reference | Source | Link | Tags |
|---|---|---|---|
| git.kernel.org/stable/c/da9c16568bc79140a54c1f5fcf07a0305df47b37 | 416baaa9-dc9f-4396-8d5f-8c081fb06d67 | git.kernel.org | |
| git.kernel.org/stable/c/0af8780bdfdfc91fb9127bddb9c48fab67dc9d9e | 416baaa9-dc9f-4396-8d5f-8c081fb06d67 | git.kernel.org | |
| git.kernel.org/stable/c/7f796bb3b440d7f1b14c0e3b520462eb34f553af | 416baaa9-dc9f-4396-8d5f-8c081fb06d67 | git.kernel.org | |
| git.kernel.org/stable/c/3acdd44385bc7e2e57605e073691ce69cc5a960d | 416baaa9-dc9f-4396-8d5f-8c081fb06d67 | git.kernel.org | |
| git.kernel.org/stable/c/fb717c536af2aafeca520ff11d1e0f25f7ab8fa9 | 416baaa9-dc9f-4396-8d5f-8c081fb06d67 | git.kernel.org | |
| CVE Program record | CVE.ORG | www.cve.org | canonical |
| NVD vulnerability detail | NVD | nvd.nist.gov | canonical, analysis |
No vendor comments have been submitted for this CVE.
There are currently no legacy QID mappings associated with this CVE.