---
id: CVE-2026-98623
title: 'drm/nouveau/clk: fix list cursor use after loop in nvkm_clk_ustate_update'
summary: |-
  In the Linux kernel, the following vulnerability has been resolved:

  drm/nouveau/clk: fix list cursor use after loop in nvkm_clk_ustate_update

  If list_for_each_entry() exits without hitting a break then "pstate" is
  not a valid pstate po…
severity: none
vendor: Linux
product: Linux
affected:
  - >-
    Linux >= 7c856522069755ab9d163a24ac332cd3cb35fe30 <
    db5dd9f47b4df1be322f498d846e9a82940a7390
  - >-
    Linux >= 7c856522069755ab9d163a24ac332cd3cb35fe30 <
    9d550924961f61a491dd95359c63494fa8a23d9f
  - >-
    Linux >= 7c856522069755ab9d163a24ac332cd3cb35fe30 <
    492e9cfa12f35f7946ea1b78a19f1f9337d62248
  - >-
    Linux >= 7c856522069755ab9d163a24ac332cd3cb35fe30 <
    a867abcfa85ab487066c3d3008a1ba905da04113
  - >-
    Linux >= 7c856522069755ab9d163a24ac332cd3cb35fe30 <
    5315c7bacfe274ddfe649d9556e9a341ffa812da
  - >-
    Linux >= 7c856522069755ab9d163a24ac332cd3cb35fe30 <
    0d096a7f7d79207490858dde731b16da5337e90c
  - >-
    Linux >= 7c856522069755ab9d163a24ac332cd3cb35fe30 <
    391517da7fd54ae40e4a7fe1cc696217343b0061
  - >-
    Linux >= 7c856522069755ab9d163a24ac332cd3cb35fe30 <
    aff09d9e37e02dc60bde79035ac15b136d602259
  - Linux 3.13
published: '2026-10-18'
updated: '2026-10-18'
sourceUpdated: '2026-10-18T15:19:44.744Z'
source: CVEORG
sourceUrl: 'https://www.cve.org/CVERecord?id=CVE-2026-98623'
references:
  - url: 'https://git.kernel.org/stable/c/db5dd9f47b4df1be322f498d846e9a82940a7390'
  - url: 'https://git.kernel.org/stable/c/9d550924961f61a491dd95359c63494fa8a23d9f'
  - url: 'https://git.kernel.org/stable/c/492e9cfa12f35f7946ea1b78a19f1f9337d62248'
  - url: 'https://git.kernel.org/stable/c/a867abcfa85ab487066c3d3008a1ba905da04113'
  - url: 'https://git.kernel.org/stable/c/5315c7bacfe274ddfe649d9556e9a341ffa812da'
  - url: 'https://git.kernel.org/stable/c/0d096a7f7d79207490858dde731b16da5337e90c'
  - url: 'https://git.kernel.org/stable/c/391517da7fd54ae40e4a7fe1cc696217343b0061'
  - url: 'https://git.kernel.org/stable/c/aff09d9e37e02dc60bde79035ac15b136d602259'
tags:
  - cve.org
ingestedAt: '2026-10-18T15:45:12.236Z'
---

## Overview

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

drm/nouveau/clk: fix list cursor use after loop in nvkm_clk_ustate_update

If list_for_each_entry() exits without hitting a break then "pstate" is
not a valid pstate pointer.  Introduce a "found" variable instead.

The check is reachable from userspace: nvkm_clk_ustate_update() takes the
pstate id straight from the 'pstate' debugfs file, so requesting an id
that is not in clk->states - or any id at all when the perf tables are
broken and the list is empty - makes the pstate->pstate != req test
dereference the list head cast to a struct nvkm_pstate, which is an
out-of-bounds read.

[Francesco: rebased on drm-misc-next, expanded the commit message]

## Affected

- `Linux >= 7c856522069755ab9d163a24ac332cd3cb35fe30 < db5dd9f47b4df1be322f498d846e9a82940a7390`
- `Linux >= 7c856522069755ab9d163a24ac332cd3cb35fe30 < 9d550924961f61a491dd95359c63494fa8a23d9f`
- `Linux >= 7c856522069755ab9d163a24ac332cd3cb35fe30 < 492e9cfa12f35f7946ea1b78a19f1f9337d62248`
- `Linux >= 7c856522069755ab9d163a24ac332cd3cb35fe30 < a867abcfa85ab487066c3d3008a1ba905da04113`
- `Linux >= 7c856522069755ab9d163a24ac332cd3cb35fe30 < 5315c7bacfe274ddfe649d9556e9a341ffa812da`
- `Linux >= 7c856522069755ab9d163a24ac332cd3cb35fe30 < 0d096a7f7d79207490858dde731b16da5337e90c`
- `Linux >= 7c856522069755ab9d163a24ac332cd3cb35fe30 < 391517da7fd54ae40e4a7fe1cc696217343b0061`
- `Linux >= 7c856522069755ab9d163a24ac332cd3cb35fe30 < aff09d9e37e02dc60bde79035ac15b136d602259`
- `Linux 3.13`

## Remediation

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