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

accel/rocket: Fix error path handling in rocket_job_run()

In rocket_job_run(), after taking an extra fence reference for
job->done_fence via dma_fence_get(), the error paths have three bugs:

- The dma_fence reference held by job->done_fence is never released,
causing a reference leak.
- pm_runtime_get_sync() increments the usage counter even on failure,
but the error path does not decrement it, leaking the runtime PM
reference and preventing the NPU from suspending.
- A valid but unsignaled fence is returned to the DRM scheduler,
which triggers WARN("Fence ... released with pending signals!")
when the scheduler drops its reference.

Fix by replacing pm_runtime_get_sync() with pm_runtime_resume_and_get()
which auto-balances the usage counter on failure, releasing both fence
references on error, and returning ERR_PTR(ret) instead of the
unsignaled fence.

[tomeu: Refactored error paths to use consolidated goto labels]
Published: 2026-09-11
Score: 4.7 Medium
EPSS: < 1% Very Low
KEV: No
Impact: Device suspend failure and resource exhaustion
Action: Apply patch
AI Analysis

Impact

The bug resides in the Linux kernel’s accel/rocket driver where rocket_job_run() mishandles DMA fence references and runtime power‑management counters on error. It leaves a fence reference unreleased, increments the runtime PM usage counter without a matching decrement, and returns an unsignaled fence to the DRM scheduler. These issues can lead to resource exhaustion, warn the scheduler, and prevent the NVIDIA Processing Unit from suspending, compromising system stability and power management.

Affected Systems

The vulnerability impacts any Linux kernel release that contains the accel/rocket driver before the commit that replaces pm_runtime_get_sync with pm_runtime_resume_and_get. No specific version numbers are listed, so any kernel embedding the buggy code path referenced in the commit URLs is vulnerable.

Risk and Exploitability

The CVSS score of 4.7 indicates medium severity. EPSS score of < 1% indicates a very low, but non-zero, likelihood of exploitation, and the flaw is not in the CISA KEV catalog. Because the issue is kernel-level, an attacker would need local root or kernel‑mode code execution; no remote exploitation path is described, limiting overall risk.

Generated by OpenCVE AI on September 13, 2026 at 04:42 UTC.

Remediation

No vendor fix or workaround currently provided.

OpenCVE Recommended Actions

  • Upgrade to a kernel version that incorporates the commit replacing pm_runtime_get_sync with pm_runtime_resume_and_get in the accel/rocket driver, or download and apply the patch from the referenced commits, rebuild, and restart the kernel.
  • If an immediate kernel update is not possible, manually apply the patch to the accel/rocket source, recompile the kernel, and reboot to load the corrected driver.
  • As a temporary safeguard, unload or disable the accel/rocket module to prevent the resource leak until a permanent fix is deployed.

Generated by OpenCVE AI on September 13, 2026 at 04:42 UTC.

Tracking

Sign in to view the affected projects.

Advisories

No advisories yet.

History

Sat, 12 Sep 2026 00:15:00 +0000

Type Values Removed Values Added
Weaknesses CWE-911
References
Metrics threat_severity

None

cvssV3_1

{'score': 4.7, 'vector': 'CVSS:3.1/AV:L/AC:H/PR:L/UI:N/S:U/C:N/I:N/A:H'}

threat_severity

Moderate


Fri, 11 Sep 2026 23:45:00 +0000

Type Values Removed Values Added
Description In the Linux kernel, the following vulnerability has been resolved: accel/rocket: Fix error path handling in rocket_job_run() In rocket_job_run(), after taking an extra fence reference for job->done_fence via dma_fence_get(), the error paths have three bugs: - The dma_fence reference held by job->done_fence is never released, causing a reference leak. - pm_runtime_get_sync() increments the usage counter even on failure, but the error path does not decrement it, leaking the runtime PM reference and preventing the NPU from suspending. - A valid but unsignaled fence is returned to the DRM scheduler, which triggers WARN("Fence ... released with pending signals!") when the scheduler drops its reference. Fix by replacing pm_runtime_get_sync() with pm_runtime_resume_and_get() which auto-balances the usage counter on failure, releasing both fence references on error, and returning ERR_PTR(ret) instead of the unsignaled fence. [tomeu: Refactored error paths to use consolidated goto labels]
Title accel/rocket: Fix error path handling in rocket_job_run()
First Time appeared Linux
Linux linux Kernel
CPEs cpe:2.3:o:linux:linux_kernel:*:*:*:*:*:*:*:*
Vendors & Products Linux
Linux linux Kernel
References

Subscriptions

Linux Linux Kernel
cve-icon MITRE

Status: PUBLISHED

Assigner: Linux

Published:

Updated: 2026-09-11T19:44:54.328Z

Reserved: 2026-09-11T19:38:34.730Z

Link: CVE-2026-89590

cve-icon Vulnrichment

No data.

cve-icon NVD

Status : Received

Published: 2026-09-11T20:19:43.567

Modified: 2026-09-11T20:19:43.567

Link: CVE-2026-89590

cve-icon Redhat

Severity : Moderate

Publid Date: 2026-09-11T19:44:54Z

Links: CVE-2026-89590 - Bugzilla

cve-icon OpenCVE Enrichment

Updated: 2026-09-13T04:45:18Z

Weaknesses
  • CWE-911

    Improper Update of Reference Count