---
id: CVE-2025-38107
title: |-
  In the Linux kernel, the following vulnerability has been resolved:

  net_sched: ets: fix a race in ets_qdisc_change()

  Gerrard Tai reported a race condition in ETS, whenever SFQ perturb timer
  fires at the wrong time.

  The race is as foll…
summary: |-
  In the Linux kernel, the following vulnerability has been resolved:

  net_sched: ets: fix a race in ets_qdisc_change()

  Gerrard Tai reported a race condition in ETS, whenever SFQ perturb timer
  fires at the wrong time.

  The race is as foll…
severity: high
cvss: 7.8
cvssVector: 'CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H'
cwe:
  - CWE-362
vendor: linux
product: linux_kernel
affected:
  - 'linux_kernel >= 5.4.213, < 5.5'
  - 'linux_kernel >= 5.10.142, < 5.10.239'
  - 'linux_kernel >= 5.15.66, < 5.15.186'
  - 'linux_kernel >= 5.19.8, < 6.0'
  - 'linux_kernel >= 6.0.1, < 6.1.142'
  - 'linux_kernel >= 6.2, < 6.6.94'
  - 'linux_kernel >= 6.7, < 6.12.34'
  - 'linux_kernel >= 6.13, < 6.15.3'
  - linux_kernel = 6.0
  - linux_kernel = 6.16
  - debian_linux = 11.0
patched:
  - linux_kernel 6.15.3
published: '2025-07-03'
updated: '2026-10-15'
sourceUpdated: '2026-10-15T22:18:27.143'
source: NVD
sourceUrl: 'https://nvd.nist.gov/vuln/detail/CVE-2025-38107'
references:
  - url: 'https://git.kernel.org/stable/c/0383b25488a545be168744336847549d4a2d3d6c'
    label: 416baaa9-dc9f-4396-8d5f-8c081fb06d67
  - url: 'https://git.kernel.org/stable/c/073f64c03516bcfaf790f8edc772e0cfb8a84ec3'
    label: 416baaa9-dc9f-4396-8d5f-8c081fb06d67
  - url: 'https://git.kernel.org/stable/c/0b479d0aa488cb478eb2e1d8868be946ac8afb4f'
    label: 416baaa9-dc9f-4396-8d5f-8c081fb06d67
  - url: 'https://git.kernel.org/stable/c/347867cb424edae5fec1622712c8dd0a2c42918f'
    label: 416baaa9-dc9f-4396-8d5f-8c081fb06d67
  - url: 'https://git.kernel.org/stable/c/d92adacdd8c2960be856e0b82acc5b7c5395fddb'
    label: 416baaa9-dc9f-4396-8d5f-8c081fb06d67
  - url: 'https://git.kernel.org/stable/c/eb7b74e9754e1ba2088f914ad1f57a778b11894b'
    label: 416baaa9-dc9f-4396-8d5f-8c081fb06d67
  - url: 'https://git.kernel.org/stable/c/fed94bd51d62d2e0e006aa61480e94e5cd0582b0'
    label: 416baaa9-dc9f-4396-8d5f-8c081fb06d67
  - url: 'https://lists.debian.org/debian-lts-announce/2025/10/msg00007.html'
    label: af854a3a-2127-422b-91ae-364da2661108
  - url: 'https://lists.debian.org/debian-lts-announce/2025/10/msg00008.html'
    label: af854a3a-2127-422b-91ae-364da2661108
tags:
  - nvd
  - cve.org
epss: 0.00152
epssPercentile: 0.0428
ssvc:
  exploitation: none
  automatable: 'no'
  technicalImpact: total
  timestamp: '2026-10-15T21:47:26.074069Z'
ingestedAt: '2026-10-15T22:48:25.492Z'
---

## Overview

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

net_sched: ets: fix a race in ets_qdisc_change()

Gerrard Tai reported a race condition in ETS, whenever SFQ perturb timer
fires at the wrong time.

The race is as follows:

CPU 0                                 CPU 1
[1]: lock root
[2]: qdisc_tree_flush_backlog()
[3]: unlock root
 |
 |                                    [5]: lock root
 |                                    [6]: rehash
 |                                    [7]: qdisc_tree_reduce_backlog()
 |
[4]: qdisc_put()

This can be abused to underflow a parent's qlen.

Calling qdisc_purge_queue() instead of qdisc_tree_flush_backlog()
should fix the race, because all packets will be purged from the qdisc
before releasing the lock.

## Affected

- `linux_kernel >= 5.4.213, < 5.5`
- `linux_kernel >= 5.10.142, < 5.10.239`
- `linux_kernel >= 5.15.66, < 5.15.186`
- `linux_kernel >= 5.19.8, < 6.0`
- `linux_kernel >= 6.0.1, < 6.1.142`
- `linux_kernel >= 6.2, < 6.6.94`
- `linux_kernel >= 6.7, < 6.12.34`
- `linux_kernel >= 6.13, < 6.15.3`
- `linux_kernel = 6.0`
- `linux_kernel = 6.16`
- `debian_linux = 11.0`

## Remediation

Upgrade past the affected range:

- `linux_kernel 6.15.3`
