CVE-2026-98825 PUBLISHED

rtc: mpfs: fix unchecked devm_clk_get() error pointer in probe()

Assigner: Linux
Reserved: 25.09.2026 Published: 18.10.2026 Updated: 18.10.2026

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:

<pre>if (!clk) return 0; ... rate = clk_core_get_rate_recalc(clk->core); </pre>

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.

Product Status

Vendor Linux
Product Linux
Versions Default: unaffected
  • affected from 0b31d703598dc1993867597bbd45e87d824fc427 to 74dc7c52946e3d47c40edd0875adb7cc15937066 (excl.)
  • affected from 0b31d703598dc1993867597bbd45e87d824fc427 to cfd70c9b19846c524f2b6195a7484bdf22071ccf (excl.)
  • affected from 0b31d703598dc1993867597bbd45e87d824fc427 to 8a03f8422fa08eed335c51bccb612a3d81739ff2 (excl.)
  • affected from 0b31d703598dc1993867597bbd45e87d824fc427 to ac41b05d15db3134e839148290d67415ee0bdb58 (excl.)
Vendor Linux
Product Linux
Versions Default: affected
  • Version 6.0 is affected
  • unaffected from 0 to 6.0 (excl.)
  • unaffected from 6.12.113 to 6.12.* (incl.)
  • unaffected from 6.18.56 to 6.18.* (incl.)
  • unaffected from 7.2.10 to 7.2.* (incl.)
  • unaffected from 7.3-rc6 to * (incl.)

References