CVE-2026-45956
published 2026-05-27CVE-2026-45956: In the Linux kernel, the following vulnerability has been resolved: drm/exynos: vidi: use priv->vidi_dev for ctx lookup in vidi_connection_ioctl()…
In the Linux kernel, the following vulnerability has been resolved:
drm/exynos: vidi: use priv->vidi_dev for ctx lookup in vidi_connection_ioctl()
vidi_connection_ioctl() retrieves the driver_data from drm_dev->dev to
obtain a struct vidi_context pointer. However, drm_dev->dev is the
exynos-drm master device, and the driver_data contained therein is not
the vidi component device, but a completely different device.
This can lead to various bugs, ranging from null pointer dereferences and
garbage value accesses to, in unlucky cases, out-of-bounds errors,
use-after-free errors, and more.
To resolve this issue, we need to store/delete the vidi device pointer in
exynos_drm_private->vidi_dev during bind/unbind, and then read this
exynos_drm_private->vidi_dev within ioctl() to obtain the correct
struct vidi_context pointer.
Affected
9 ranges
| Vendor | Product | Version range | Fixed in |
|---|---|---|---|
| linux | linux | — | — |
| linux | linux | >= cf67cc9a29ac19c98bc4fa0e6d14b0c1f592d322 < 2987642c5213508c6c9e718324c0d5289a92c474 | 2987642c5213508c6c9e718324c0d5289a92c474 |
| linux | linux | >= cf67cc9a29ac19c98bc4fa0e6d14b0c1f592d322 < 65d1213baffa363f2eb1117b1dc7acc573b890f8 | 65d1213baffa363f2eb1117b1dc7acc573b890f8 |
| linux | linux | >= cf67cc9a29ac19c98bc4fa0e6d14b0c1f592d322 < 875fa28690e93ed5296c31d3344556c6bb867234 | 875fa28690e93ed5296c31d3344556c6bb867234 |
| linux | linux | >= cf67cc9a29ac19c98bc4fa0e6d14b0c1f592d322 < 21ca24ba51a2c28bcc4df9d7e5a40b0eb66ab76d | 21ca24ba51a2c28bcc4df9d7e5a40b0eb66ab76d |
| linux | linux | >= cf67cc9a29ac19c98bc4fa0e6d14b0c1f592d322 < b5fc86d753dd4c281a943b92f0eef02d31af03d7 | b5fc86d753dd4c281a943b92f0eef02d31af03d7 |
| linux | linux | >= cf67cc9a29ac19c98bc4fa0e6d14b0c1f592d322 < a540f767642f75240a6c35f6a65b69e44cfcea9d | a540f767642f75240a6c35f6a65b69e44cfcea9d |
| linux | linux | >= cf67cc9a29ac19c98bc4fa0e6d14b0c1f592d322 < d3968a0d85b211e197f2f4f06268a7031079e0d0 | d3968a0d85b211e197f2f4f06268a7031079e0d0 |
| linux | linux_kernel | — | — |