CVE-2022-50867 drm/msm/a6xx: Fix kvzalloc vs state_kcalloc usage
A memory management error in the Linux kernel's Adreno GPU driver can lead to memory corruption or leaks, potentially causing a denial of service.
- Exploited in the wild
- Not known
- Login needed
- Any signed-in user
- Attackable
- Local or same network only
- Victim action needed
- Not needed
- Fix
- Available
What is CVE-2022-50867?
CVE-2022-50867 is a high-severity memory corruption vulnerability in Linux, published on 30 Dec 2025. It can only be exploited from the same machine or local network, with no action from the victim.
Official description
In the Linux kernel, the following vulnerability has been resolved:
drm/msm/a6xx: Fix kvzalloc vs state_kcalloc usage
adreno_show_object() is a trap! It will re-allocate the pointer it is passed on first call, when the data is ascii85 encoded, using kvmalloc/ kvfree(). Which means the data *passed* to it must be kvmalloc'd, ie. we cannot use the state_kcalloc() helper.
This partially reverts commit ec8f1813bf8d ("drm/msm/a6xx: Replace kcalloc() with kvzalloc()"), but adds the missing kvfree() to fix the memory leak that was present previously. And adds a warning comment.
Patchwork: https://patchwork.freedesktop.org/patch/507014/
Which versions are affected by CVE-2022-50867?
How do I fix CVE-2022-50867?
Apply the vendor's patch.
Upgrade to the fixed version. Memory-safe languages, compiler hardening and fuzzing prevent most new cases. More about Memory corruption.
Is CVE-2022-50867 being exploited?
There is no known exploitation of CVE-2022-50867 in the wild and no public exploit code.
Sources
Also known as DEBIAN-CVE-2022-50867, GHSA-9wcr-h5vx-c3h9, UBUNTU-CVE-2022-50867.