---
id: CVE-2026-115567
title: 'Tokio: Race condition in `tokio::time::Interval`'
summary: >-
  Tokio is a runtime for writing applications with Rust. In 1.54.0, a race
  condition between tokio::time::Interval::poll_tick (including .tick().await)
  and the multi-threaded runtime's time driver could drop an internal timer
  entry without…
severity: medium
cvss: 5.8
cvssVector: 'CVSS:4.0/AV:L/AC:H/AT:P/PR:L/UI:N/VC:N/VI:L/VA:H/SC:N/SI:N/SA:N'
cvssSource: cna
cwe:
  - CWE-362
vendor: tokio-rs
product: tokio
affected:
  - tokio = 1.54.0
published: '2026-10-23'
updated: '2026-10-23'
sourceUpdated: '2026-10-23T17:13:16.161Z'
source: CVEORG
sourceUrl: 'https://www.cve.org/CVERecord?id=CVE-2026-115567'
references:
  - url: 'https://github.com/tokio-rs/tokio/security/advisories/GHSA-5wjr-9356-4wc8'
    label: 'https://github.com/tokio-rs/tokio/security/advisories/GHSA-5wjr-9356-4wc8'
  - url: 'https://github.com/tokio-rs/tokio/pull/8458'
    label: 'https://github.com/tokio-rs/tokio/pull/8458'
  - url: 'https://github.com/tokio-rs/tokio/pull/8692'
    label: 'https://github.com/tokio-rs/tokio/pull/8692'
  - url: >-
      https://github.com/tokio-rs/tokio/commit/2b4eba7833864c04ecd2f3e5f4a97ff4f6fa28d0
    label: >-
      https://github.com/tokio-rs/tokio/commit/2b4eba7833864c04ecd2f3e5f4a97ff4f6fa28d0
  - url: >-
      https://github.com/tokio-rs/tokio/commit/5ed619bbaba87357ee5103d71b75e7c84cad99c9
    label: >-
      https://github.com/tokio-rs/tokio/commit/5ed619bbaba87357ee5103d71b75e7c84cad99c9
  - url: 'https://github.com/tokio-rs/tokio/releases/tag/tokio-1.54.1'
    label: 'https://github.com/tokio-rs/tokio/releases/tag/tokio-1.54.1'
tags:
  - cve.org
ingestedAt: '2026-10-23T17:32:25.520Z'
---

## Overview

Tokio is a runtime for writing applications with Rust. In 1.54.0, a race condition between tokio::time::Interval::poll_tick (including .tick().await) and the multi-threaded runtime's time driver could drop an internal timer entry without synchronizing with the driver thread that was firing it. The race caused a use-after-free on the timer's waker and task state in safe Rust, which could produce assertion panics, task reference-count corruption, or heap memory corruption. This issue is fixed in 1.54.1.

## Affected

- `tokio = 1.54.0`

## Remediation

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