CVEvulnerability
CVE-2026-98825
- Status
- Received
- Published
- 2026-10-18
- Last modified
- 2026-10-21
- Assigner
- 416baaa9-dc9f-4396-8d5f-8c081fb06d67
Description
In the Linux kernel, the following vulnerability has been resolved:
rtc: mpfs: fix unchecked devm_clk_get() error pointer in probe()
devm_clk_get(&pdev->dev, "rtcref")'s return value was passed straight
into clk_get_rate() without checking it for an error first, unlike the
"rtc" clock a few lines above which is correctly checked with
IS_ERR(). clk_get_rate() only guards against a NULL clk, not an error
pointer:
if (!clk)
return 0;
...
rate = clk_core_get_rate_recalc(clk->core);
so if devm_clk_get() ever returns an error pointer here (for example
ERR_PTR(-EPROBE_DEFER), which is the normal, expected outcome if the
clkcfg clock-provider this RTC depends on has not registered its
clocks yet by the time this driver probes), clk_get_rate() dereferences
that error pointer instead of returning 0, crashing instead of letting
probe defer.
Capture the clock in the existing 'clk' local and check it with
IS_ERR() before calling clk_get_rate(), matching the handling already
used for the "rtc" clock in this same function.
References
- https://git.kernel.org/stable/c/74dc7c52946e3d47c40edd0875adb7cc15937066 git.kernel.org
- https://git.kernel.org/stable/c/8a03f8422fa08eed335c51bccb612a3d81739ff2 git.kernel.org
- https://git.kernel.org/stable/c/ab741d1b714b4acc605f3d14cdc4120f87341ed1 git.kernel.org
- https://git.kernel.org/stable/c/ac41b05d15db3134e839148290d67415ee0bdb58 git.kernel.org
- https://git.kernel.org/stable/c/cfd70c9b19846c524f2b6195a7484bdf22071ccf git.kernel.org