CVE-2026-98825: rtc: mpfs: fix unchecked devm_clk_get() error pointer in probe()
In the Linux kernel, the following vulnerability has been resolved:
rtc: mpfs: fix unchecked devmclkget() error pointer in probe()
devmclkget(&pdev->dev, "rtcref")'s return value was passed straight into clkgetrate() without checking it for an error first, unlike the "rtc" clock a few lines above which is correctly checked with ISERR(). clkgetrate() only guards against a NULL clk, not an error pointer:
if (!clk) return 0; ... rate = clkcoregetraterecalc(clk->core);
so if devmclkget() ever returns an error pointer here (for example ERRPTR(-EPROBEDEFER), 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), clkgetrate() 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 ISERR() before calling clkgetrate(), matching the handling already used for the "rtc" clock in this same function.