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

accel/rocket: fix NULL dereference and integer overflow in rocket_job_push()

rocket_job_push() allocates a temporary array to hold all input and
output GEM object pointers:

bos = kvmalloc_array(job->in_bo_count + job->out_bo_count,
sizeof(void *), GFP_KERNEL);
memcpy(bos, job->in_bos, job->in_bo_count * sizeof(void *));
memcpy(&bos[job->in_bo_count], job->out_bos, ...);

Two bugs exist:

1. Missing NULL check: if kvmalloc_array() fails, bos is NULL and
the subsequent memcpy() dereferences it, causing a kernel NULL
pointer dereference.

2. Integer overflow: in_bo_count and out_bo_count are both u32, set
directly from userspace-supplied in_bo_handle_count and
out_bo_handle_count with no prior validation. Their sum is computed
in u32 arithmetic and can wrap to a smaller value, causing the
allocation count passed to kvmalloc_array() to be smaller than
intended. Subsequent uses still operate on the original counts when
copying and locking objects, which may lead to out-of-bounds accesses
on the temporary array.

Fix by using check_add_overflow() to detect count overflow before the
allocation, and adding a NULL check on the allocation result.
Published: 2026-09-11
Score: 6.1 Medium
EPSS: < 1% Very Low
KEV: No
Impact: Denial of Service via kernel crash
Action: Patch promptly
AI Analysis

Impact

The Linux kernel’s accel/rocket subsystem contains a vulnerability where user‑supplied counts are used to allocate an array of GEM object pointers without validating the allocation result or checking for integer overflow. A failed allocation results in a NULL pointer dereference, and an overflow of the summed input and output counts can cause the allocation size to be smaller than intended, leading to out‑of‑bounds access of the temporary array. Both are classic denial‑of‑service scenarios.

Affected Systems

All Linux kernel releases that include the accel/rocket subsystem prior to the fix commit (a85402bff218f2b8f0d806e46c16c2f3d49cdda7) are affected. The vulnerability is part of the kernel core version is vulnerable regardless of vendor.

Risk and Exploitability

The CVSS score of 6.1 reflects moderate severity. The EPSS score of < 1% indicates a very low probability of exploitation, and the flaw is not listed in the CISA KEV catalog, implying limited evidence of active exploitation. The attack vector is likely local, as the failure conditions depend on user‑supplied buffer counts passed to the kernel. An attacker with the ability to invoke rocket_job_push may induce a crash, providing a local denial‑of‑service.

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

Remediation

No vendor fix or workaround currently provided.

OpenCVE Recommended Actions

  • Apply the kernel update that contains commit a85402bff218f2b8f0d806e46c16c2f3d49cdda7
  • If an immediate kernel update is not feasible, disable the accel/rocket subsystem or prevent applications from calling rocket_job_push
  • Validate or constrain the in_bo_handle_count and out_bo_handle_count before they are passed to the kernel, ensuring that the summed count cannot overflow a 32‑bit value

Generated by OpenCVE AI on September 13, 2026 at 04:41 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-476
References
Metrics threat_severity

None

cvssV3_1

{'score': 6.1, 'vector': 'CVSS:3.1/AV:L/AC:L/PR:L/UI:N/S:U/C:N/I:L/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 NULL dereference and integer overflow in rocket_job_push() rocket_job_push() allocates a temporary array to hold all input and output GEM object pointers: bos = kvmalloc_array(job->in_bo_count + job->out_bo_count, sizeof(void *), GFP_KERNEL); memcpy(bos, job->in_bos, job->in_bo_count * sizeof(void *)); memcpy(&bos[job->in_bo_count], job->out_bos, ...); Two bugs exist: 1. Missing NULL check: if kvmalloc_array() fails, bos is NULL and the subsequent memcpy() dereferences it, causing a kernel NULL pointer dereference. 2. Integer overflow: in_bo_count and out_bo_count are both u32, set directly from userspace-supplied in_bo_handle_count and out_bo_handle_count with no prior validation. Their sum is computed in u32 arithmetic and can wrap to a smaller value, causing the allocation count passed to kvmalloc_array() to be smaller than intended. Subsequent uses still operate on the original counts when copying and locking objects, which may lead to out-of-bounds accesses on the temporary array. Fix by using check_add_overflow() to detect count overflow before the allocation, and adding a NULL check on the allocation result.
Title accel/rocket: fix NULL dereference and integer overflow in rocket_job_push()
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:55.813Z

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

Link: CVE-2026-89592

cve-icon Vulnrichment

No data.

cve-icon NVD

Status : Received

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

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

Link: CVE-2026-89592

cve-icon Redhat

Severity : Moderate

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

Links: CVE-2026-89592 - Bugzilla

cve-icon OpenCVE Enrichment

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

Weaknesses