CVE-2025-38521

drm/imagination: Fix kernel crash when hard resetting the GPU

published August 16, 2025

CVSS
—
EPSS
0%
Percentile
4.4
In the wild
Unconfirmed
What it is

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

drm/imagination: Fix kernel crash when hard resetting the GPU

The GPU hard reset sequence calls pm_runtime_force_suspend() and

pm_runtime_force_resume(), which according to their documentation should

only be used during system-wide PM transitions to sleep states.

The main issue though is that depending on some internal runtime PM

state as seen by pm_runtime_force_suspend() (whether the usage count is

<= 1), pm_runtime_force_resume() might not resume the device unless

needed. If that happens, the runtime PM resume callback

pvr_power_device_resume() is not called, the GPU clocks are not

re-enabled, and the kernel crashes on the next attempt to access GPU

registers as part of the power-on sequence.

Replace calls to pm_runtime_force_suspend() and

pm_runtime_force_resume() with direct calls to the driver's runtime PM

callbacks, pvr_power_device_suspend() and pvr_power_device_resume(),

to ensure clocks are re-enabled and avoid the kernel crash.

The record
Technical detail
CVSS
Not scored
CVSS v4.0
Not supplied
EPSS
0.00156 · 4.4th percentile
Published
2025-08-16T10:55Z
EPSS history
Timeline
  • 16 AUG 10:55Z
    drm/imagination: Fix kernel crash when hard resetting the GPU
    cvelistv5