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

drm/imagination: Fix user array stride in pvr_set_uobj_array()

pvr_set_uobj_array() copies an array of kernel objects to a userspace
array whose element size is described by out->stride. When out->stride
is different from the kernel object size, the slow path advances the
userspace pointer by the kernel object size and the kernel pointer by the
userspace stride.

This reverses the intended layout. For larger userspace strides, later
copies read from the wrong kernel addresses. For smaller userspace
strides, later copies are written at the wrong userspace offsets. The
padding clear is also done only for the first element instead of the
padding area for each element.

Advance the userspace pointer by out->stride and the kernel pointer by
obj_size, and clear per-element padding while the current userspace
pointer is still available.
Published: 2026-08-10
Score: n/a
EPSS: n/a
KEV: No
Impact: n/a
Action: n/a
AI Analysis

Impact

The flaw originates in the DRM Imagination subsystem of the Linux kernel, where the pvr_set_uobj_array() function copies kernel objects to a user‑supplied array using a stride parameter. If the stride provided by the caller differs from the size of the kernel object, the routine incorrectly advances the user‑space pointer by the kernel object size while advancing the kernel pointer by the user‑space stride. This inversion can lead to subsequent copies reading from incorrect kernel addresses or writing to wrong user‑space offsets, and the padding clear operation applies only to the first element. The erroneous pointer adjustments create out‑of‑bounds or misaligned memory accesses, corrupting kernel data structures or leaking kernel memory to user space.

Affected Systems

Any Linux kernel that includes the Imagination DRM driver and does not yet contain the commit that fixes the stride calculation is affected. No specific kernel release numbers are listed, so versions prior to the application of commit 09beaf4aec05b0525f2153dce693f3eb3166697a are potentially vulnerable.

Risk and Exploitability

The EPSS score is unavailable and the vulnerability is not listed in the CISA KEV catalog. Based on the description, the derailing of pointer adjustments requires an attacker to invoke the vulnerable DRM interface, implying a local attack vector. Once successfully triggered, the memory corruption can be severe enough to compromise kernel integrity, potentially resulting in privilege escalation or system compromise. The exploitation likelihood remains uncertain due to the lack of publicly disclosed exploits, but the defect is serious enough to warrant immediate attention for systems that run the affected driver.

Generated by OpenCVE AI on August 10, 2026 at 18:10 UTC.

Remediation

No vendor fix or workaround currently provided.

OpenCVE Recommended Actions

  • Apply a kernel update that incorporates the patch with commit 09beaf4aec05b0525f2153dce693f3eb3166697a.
  • If a quick kernel upgrade is not feasible, disable the Imagination DRM driver module (e.g., by removing the module or denying access to /dev/dri/renderD* for untrusted users).
  • In absence of a patch or driver disablement, restrict access to the DRM device to trusted users only and monitor system logs for suspicious memory access errors or kernel panics that may indicate the flaw is being abused.

Generated by OpenCVE AI on August 10, 2026 at 18:10 UTC.

Tracking

Sign in to view the affected projects.

Advisories

No advisories yet.

History

Mon, 10 Aug 2026 18:30:00 +0000

Type Values Removed Values Added
Weaknesses CWE-665

Mon, 10 Aug 2026 12:30:00 +0000

Type Values Removed Values Added
Description In the Linux kernel, the following vulnerability has been resolved: drm/imagination: Fix user array stride in pvr_set_uobj_array() pvr_set_uobj_array() copies an array of kernel objects to a userspace array whose element size is described by out->stride. When out->stride is different from the kernel object size, the slow path advances the userspace pointer by the kernel object size and the kernel pointer by the userspace stride. This reverses the intended layout. For larger userspace strides, later copies read from the wrong kernel addresses. For smaller userspace strides, later copies are written at the wrong userspace offsets. The padding clear is also done only for the first element instead of the padding area for each element. Advance the userspace pointer by out->stride and the kernel pointer by obj_size, and clear per-element padding while the current userspace pointer is still available.
Title drm/imagination: Fix user array stride in pvr_set_uobj_array()
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-08-10T12:01:36.582Z

Reserved: 2026-07-30T09:28:09.378Z

Link: CVE-2026-68262

cve-icon Vulnrichment

No data.

cve-icon NVD

No data.

cve-icon Redhat

No data.

cve-icon OpenCVE Enrichment

Updated: 2026-08-10T20:15:03Z

Weaknesses