CVE-2024-44993: drm/v3d: Fix out-of-bounds read in `v3d_csd_job_run()`

Published Sep 4, 2024
·
Updated

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

drm/v3d: Fix out-of-bounds read in v3dcsdjobrun()

When enabling UBSAN on Raspberry Pi 5, we get the following warning:

[ 387.894977] UBSAN: array-index-out-of-bounds in drivers/gpu/drm/v3d/v3dsched.c:320:3 [ 387.903868] index 7 is out of range for type 'u32 [7]' [ 387.909692] CPU: 0 PID: 1207 Comm: kworker/u16:2 Tainted: G WC 6.10.3-v8-16k-numa #151 [ 387.919166] Hardware name: Raspberry Pi 5 Model B Rev 1.0 (DT) [ 387.925961] Workqueue: v3dcsd drmschedrunjobwork [gpusched] [ 387.932525] Call trace: [ 387.935296] dumpbacktrace+0x170/0x1b8 [ 387.939403] showstack+0x20/0x38 [ 387.942907] dumpstacklvl+0x90/0xd0 [ 387.946785] dumpstack+0x18/0x28 [ 387.950301] ubsanhandleoutofbounds+0x98/0xd0 [ 387.955383] v3dcsdjobrun+0x3a8/0x438 [v3d] [ 387.960707] drmschedrunjobwork+0x520/0x6d0 [gpusched] [ 387.966862] processonework+0x62c/0xb48 [ 387.971296] workerthread+0x468/0x5b0 [ 387.975317] kthread+0x1c4/0x1e0 [ 387.978818] retfromfork+0x10/0x20 [ 387.983014] ---[ end trace ]---

This happens because the UAPI provides only seven configuration registers and we are reading the eighth position of this u32 array.

Therefore, fix the out-of-bounds read in v3dcsdjobrun() by accessing only seven positions on the 'u32 [7]' array. The eighth register exists indeed on V3D 7.1, but it isn't currently used. That being so, let's guarantee that it remains unused and add a note that it could be set in a future patch.

Affected Software

5 affected componentsFixes available
Linux Linux kernel>=6.8<6.10.7
Linux Linux kernel=6.11-rc1
Linux Linux kernel=6.11-rc2
Linux Linux kernel=6.11-rc3
debian/linux
5.10.223-15.10.234-16.1.129-16.1.135-16.12.25-1

Event History

Sep 4, 2024
CVE Published
via MITRE·07:54 PM
Data Sourced
via MITRE·07:54 PM
Description
Jan 13, 2025
Data Sourced
via Ubuntu·06:30 PM
RemedyDescriptionSeverityAffected Software
Apr 27, 2025
Data Sourced
via Debian·07:39 PM
DescriptionAffected Software

Frequently Asked Questions

1

What is the severity of CVE-2024-44993?

CVE-2024-44993 is classified as a high severity vulnerability due to its potential impact on system security.

2

How do I fix CVE-2024-44993?

To fix CVE-2024-44993, users should update to patched versions of the Linux kernel, such as 5.10.223-1, 5.10.226-1, 6.1.123-1, or later.

3

What software is affected by CVE-2024-44993?

CVE-2024-44993 affects multiple versions of the Linux kernel, specifically versions from 6.8 up to 6.10.7, and also 6.11-rc1, 6.11-rc2, and 6.11-rc3.

4

What are the risks associated with CVE-2024-44993?

The risk associated with CVE-2024-44993 includes potential out-of-bounds reads that can lead to information leaks or system crashes.

5

When was CVE-2024-44993 disclosed?

CVE-2024-44993 was disclosed as a vulnerability in the Linux kernel's GPU driver affecting certain Raspberry Pi 5 configurations.

Contact

SecAlerts Pty Ltd.
132 Wickham Terrace
Fortitude Valley,
QLD 4006, Australia
info@secalerts.co
By using SecAlerts services, you agree to our services end-user license agreement. This website is safeguarded by reCAPTCHA and governed by the Google Privacy Policy and Terms of Service. All names, logos, and brands of products are owned by their respective owners, and any usage of these names, logos, and brands for identification purposes only does not imply endorsement. If you possess any content that requires removal, please get in touch with us.
© 2026 SecAlerts Pty Ltd.
ABN: 70 645 966 203, ACN: 645 966 203