CVE-2026-99150

drm/amdgpu: don't drop the runtime PM reference twice in amdgpu_gpr

State
Published
Severity
Not scored
Published
Oct 28, 2026
Updated
Oct 30, 2026
Reserved
Sep 25, 2026

Read the record on cve.org

Description

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

drm/amdgpu: don't drop the runtime PM reference twice in amdgpu_gpr

amdgpu_debugfs_gpr_read() drops its runtime PM reference right after reading the wave registers. When copying them to userspace fails, it jumps to the err label, which drops the reference a second time. A read into a bad buffer on Navi31 either steals a reference somebody else holds (power/runtime_usage goes from 1 to 0) or underflows the count:

amdgpu 0000:03:00.0: Runtime PM usage count underflow!

The registers are already in the kernel buffer at that point, so finish the hardware access first and copy the buffer with a single copy_to_user() instead of the put_user() loop with its own error path.

(cherry picked from commit 31035bbd74f7c3e10c163db875b8e67f8b50ee6a)

Scores

The record has no CVSS score.

Weaknesses

The record names no weakness.

Affected Products

ProductVersions
LinuxLinux
  • 9eee152aab56d374edb9ad21b3db05f5cdda2fe6 to before 24c1f6e381d564e5f6893323cfe0264950358451Affected
  • 9eee152aab56d374edb9ad21b3db05f5cdda2fe6 to before c333834b1b9cbb1021c954d29fa2373ac9e73499Affected
  • 9eee152aab56d374edb9ad21b3db05f5cdda2fe6 to before eda6b57a83d942199a5947e73556fe918affad86Affected
  • 9eee152aab56d374edb9ad21b3db05f5cdda2fe6 to before f9c0b333a5e44f734478ca8a7345f8b87d65ba7cAffected
  • 9eee152aab56d374edb9ad21b3db05f5cdda2fe6 to before 35aa048f242cade635f17924183c1df0ffe7a486Affected
  • 9eee152aab56d374edb9ad21b3db05f5cdda2fe6 to before 652b1f26125fe48aed5f4944698a85b457eef491Affected
  • 9eee152aab56d374edb9ad21b3db05f5cdda2fe6 to before 253555a9baccefffe1f6e5f2fe54363c7c01ebb9Affected
  • 9eee152aab56d374edb9ad21b3db05f5cdda2fe6 to before de9f6bcdb44f0e410031002e2f103826ea6b6259Affected
  • 865e2dbadf6856c9219626fbd6154cac44e5fbcaAffected
  • 5.8.2 to before 5.9Affected
LinuxLinux
  • 5.9Affected
  • before 5.9Not affected
  • 5.10.273 through 5.10.*Not affected
  • 5.15.224 through 5.15.*Not affected
  • 6.1.191 through 6.1.*Not affected
  • 6.6.161 through 6.6.*Not affected
  • 6.12.115 through 6.12.*Not affected
  • 6.18.59 through 6.18.*Not affected
  • 7.2.13 through 7.2.*Not affected
  • 7.3 and laterNot affected

References

Every record here comes from the CVE Program’s CVE List. © 1999–2026 The MITRE Corporation. CVE is a registered trademark of The MITRE Corporation. The records are reproduced under the CVE Program terms of use.