CVE Catalog

CVE-2026-98825

Low risk· EPSS 10%
Published: Updated: Translated: NVD NIST

Exploitation Probability (EPSS)

Low risk
0.20%

10th percentile - higher than 10% of all known CVEs

Summary

In the Linux kernel, the mpfs RTC driver does not check the return value of devm_clk_get() for an error before passing it to clk_get_rate(). If an error pointer is returned (e.g. -EPROBE_DEFER), clk_get_rate() dereferences it, crashing instead of deferring probe.

Risk Assessment

May lead to kernel crash (panic) during RTC driver initialization on mpfs platforms, especially when the dependent clock is not yet registered.

Recommendation

Update the Linux kernel to a version containing the fix that checks the error pointer with IS_ERR() before calling clk_get_rate().

Other vulnerabilities in Linux kernel

See all
Original NVD description (English source)

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.

Vulnerability data from NVD (NIST) · CISA KEV · EPSS