What’s Vulnerable › Vulnerabilities
CVE-2026-53152: mmc: dw_mmc-rockchip: Add missing private data for very old controllers
- Severity: medium (CVSS 5.5 v3.1)
- Exploited in the wild: not listed in CISA KEV
- EPSS: 0.2% probability of exploitation in the next 30 days
- Public exploit or detection template: none known
- Published: 2026-06-25 · updated 2026-07-06
- Weakness: CWE-476
Description
In the Linux kernel, the following vulnerability has been resolved: mmc: dw_mmc-rockchip: Add missing private data for very old controllers The really old controllers (rk2928, rk3066, rk3188) do not support UHS speeds at all, and thus never handled phase data. For that reason it never had a parse_dt callback and no driver private data at all. Commit ff6f0286c896 ("mmc: dw_mmc-rockchip: Add memory clock auto-gating support") makes the private data sort of mandatory, because the init function checks whether phases are configured internally or through the clock controller. This results in the old SoCs then experiencing NULL-pointer dereferences when they try to access that private-data struct. While we could have if (priv) conditionals in all places, it's way less cluttery to just give the old types their private-data struct.
Affected products
- Linux kernel: from 6.12.78 before 6.12.94; from 6.18.19 before 6.18.36; from 6.19 before 7.0.13; 7.1-rc1, 7.1-rc2, 7.1-rc3, 7.1-rc4, 7.1-rc5, 7.1-rc6 — fixed in 6.12.94, 6.18.36, 7.0.13
How to fix
Upgrade to a fixed version: Linux kernel 6.12.94, 6.18.36, 7.0.13. Check the vendor advisory for mitigations.
References
- https://git.kernel.org/stable/c/1e9a4850afa0ceb63984fb1a9f3e86d0fc4fd18f
- https://git.kernel.org/stable/c/7f8007be13e6cc1e0a508fe461f9a91ba9a28b8c
- https://git.kernel.org/stable/c/8d9eca906e76d3dd40e5f2c79701f066678f2e62
- https://git.kernel.org/stable/c/b1180ff50cca48807893ecde7d1f81d573c88c85
Get alerted when CVE-2026-53152 or the next vulnerability affects your stack