---
id: CVE-2026-72035
title: >-
  In the Linux kernel, the following vulnerability has been resolved:


  net/sched: sch_taprio: Replace direct dequeue call with peek and
  qdisc_dequeue_peeked


  When taprio's software path peeks a non-work-conserving child qdisc, the

  child st…
summary: >-
  In the Linux kernel, the following vulnerability has been resolved:


  net/sched: sch_taprio: Replace direct dequeue call with peek and
  qdisc_dequeue_peeked


  When taprio's software path peeks a non-work-conserving child qdisc, the

  child st…
severity: high
cvss: 8.2
cvssVector: 'CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:L/A:H'
published: '2026-08-15'
updated: '2026-08-23'
source: NVD
sourceUrl: 'https://nvd.nist.gov/vuln/detail/CVE-2026-72035'
references:
  - url: 'https://git.kernel.org/stable/c/17ab5f76f3899f67e5569722f334591f4b88b17b'
    label: 416baaa9-dc9f-4396-8d5f-8c081fb06d67
  - url: 'https://git.kernel.org/stable/c/18d580cb00c55805633bae45e90cf22ed6b8e424'
    label: 416baaa9-dc9f-4396-8d5f-8c081fb06d67
  - url: 'https://git.kernel.org/stable/c/2dcebbd1ad2e180fe7b98bf346ced69a872e11e6'
    label: 416baaa9-dc9f-4396-8d5f-8c081fb06d67
  - url: 'https://git.kernel.org/stable/c/51f8af240aed903e988755af33d7491030b50ae9'
    label: 416baaa9-dc9f-4396-8d5f-8c081fb06d67
  - url: 'https://git.kernel.org/stable/c/6ee5a7665a9080bcb05d703bf981a579436fd05e'
    label: 416baaa9-dc9f-4396-8d5f-8c081fb06d67
  - url: 'https://git.kernel.org/stable/c/e056e1dfcddca877dd46d704e8ec9860cfc9ec44'
    label: 416baaa9-dc9f-4396-8d5f-8c081fb06d67
  - url: 'https://git.kernel.org/stable/c/e2b7ee61989f2d39df6c2cc06f9db1aea69bdb09'
    label: 416baaa9-dc9f-4396-8d5f-8c081fb06d67
  - url: 'https://git.kernel.org/stable/c/f60d5c12e0551012cee5c272b0bcbcc78f7bb506'
    label: 416baaa9-dc9f-4396-8d5f-8c081fb06d67
tags:
  - nvd
epss: 0.00573
epssPercentile: 0.46085
ingestedAt: '2026-08-23T13:48:07.518Z'
---

## Overview

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

net/sched: sch_taprio: Replace direct dequeue call with peek and qdisc_dequeue_peeked

When taprio's software path peeks a non-work-conserving child qdisc, the
child stashes the peeked skb in its gso_skb; taprio_dequeue_from_txq()
then takes the packet with a direct child ->dequeue() call, which ignores
that stash, orphans the peeked skb and desyncs the child's qlen/backlog.
With a qfq child this re-enters the child on an emptied list and
dereferences NULL, panicking the kernel from softirq on ordinary egress.

Take the packet through qdisc_dequeue_peeked(), as sch_red and sch_sfb
now do. The helper returns the child's stashed skb first and is a no-op
when there is none, so a work-conserving child is unaffected and the
gated path now consumes the skb whose length was charged to the budget.

## Remediation

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