CVE-2022-50867

Summary

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/

Affected Software

VendorProductVersion RangeStatus
LinuxLinuxb859f9b009bbfbc236d9b076c64c59ccb41b8737 < 4b1bbc0571a5d7ee10f754186dc3d619b9ced5c1affected
LinuxLinuxb859f9b009bbfbc236d9b076c64c59ccb41b8737 < 83d18e9d9c0150d98dc24e3642ea93f5e245322caffected
LinuxLinux5.17affected
LinuxLinux0 < 5.17unaffected
LinuxLinux6.0.7 <= 6.0.*unaffected
LinuxLinux6.1 <= *unaffected

Weaknesses

References