From: Alexandre Belloni Date: Mon, 3 Mar 2025 22:35:57 +0000 (+0100) Subject: rtc: pm8xxx: fix possible race condition X-Git-Tag: v6.15-rc1~33^2~18 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=252f49cd71ba9d66089b447a18be792ea272a57e;p=thirdparty%2Flinux.git rtc: pm8xxx: fix possible race condition probe must not fail after devm_rtc_register_device is successful because the character device will be seen by userspace and may be opened right away. Call it last to avoid opening the race window. Link: https://lore.kernel.org/r/20250303223600.1135142-2-alexandre.belloni@bootlin.com Signed-off-by: Alexandre Belloni --- diff --git a/drivers/rtc/rtc-pm8xxx.c b/drivers/rtc/rtc-pm8xxx.c index 852d80188bd0b..3b9709214a08d 100644 --- a/drivers/rtc/rtc-pm8xxx.c +++ b/drivers/rtc/rtc-pm8xxx.c @@ -519,11 +519,11 @@ static int pm8xxx_rtc_probe(struct platform_device *pdev) if (rc < 0) return rc; - rc = devm_rtc_register_device(rtc_dd->rtc); + rc = devm_pm_set_wake_irq(&pdev->dev, rtc_dd->alarm_irq); if (rc) return rc; - return devm_pm_set_wake_irq(&pdev->dev, rtc_dd->alarm_irq); + return devm_rtc_register_device(rtc_dd->rtc); } static struct platform_driver pm8xxx_rtc_driver = {