This is a note to let you know that I've just added the patch titled rtc: Adjust failure return code for cmos_set_alarm() to the 6.7-stable tree which can be found at: http://www.kernel.org/git/?p=linux/kernel/git/stable/stable-queue.git;a=summary The filename of the patch is: rtc-adjust-failure-return-code-for-cmos_set_alarm.patch and it can be found in the queue-6.7 subdirectory. If you, or anyone else, feels it should not be added to the stable tree, please let <stable@xxxxxxxxxxxxxxx> know about it. >From 1311a8f0d4b23f58bbababa13623aa40b8ad4e0c Mon Sep 17 00:00:00 2001 From: Mario Limonciello <mario.limonciello@xxxxxxx> Date: Mon, 27 Nov 2023 23:36:51 -0600 Subject: rtc: Adjust failure return code for cmos_set_alarm() MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit From: Mario Limonciello <mario.limonciello@xxxxxxx> commit 1311a8f0d4b23f58bbababa13623aa40b8ad4e0c upstream. When mc146818_avoid_UIP() fails to return a valid value, this is because UIP didn't clear in the timeout period. Adjust the return code in this case to -ETIMEDOUT. Tested-by: Mateusz Jończyk <mat.jonczyk@xxxxx> Reviewed-by: Mateusz Jończyk <mat.jonczyk@xxxxx> Acked-by: Mateusz Jończyk <mat.jonczyk@xxxxx> Cc: <stable@xxxxxxxxxxxxxxx> Fixes: cdedc45c579f ("rtc: cmos: avoid UIP when reading alarm time") Fixes: cd17420ebea5 ("rtc: cmos: avoid UIP when writing alarm time") Signed-off-by: Mario Limonciello <mario.limonciello@xxxxxxx> Link: https://lore.kernel.org/r/20231128053653.101798-3-mario.limonciello@xxxxxxx Signed-off-by: Alexandre Belloni <alexandre.belloni@xxxxxxxxxxx> Signed-off-by: Greg Kroah-Hartman <gregkh@xxxxxxxxxxxxxxxxxxx> --- drivers/rtc/rtc-cmos.c | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) --- a/drivers/rtc/rtc-cmos.c +++ b/drivers/rtc/rtc-cmos.c @@ -292,7 +292,7 @@ static int cmos_read_alarm(struct device /* This not only a rtc_op, but also called directly */ if (!is_valid_irq(cmos->irq)) - return -EIO; + return -ETIMEDOUT; /* Basic alarms only support hour, minute, and seconds fields. * Some also support day and month, for alarms up to a year in @@ -557,7 +557,7 @@ static int cmos_set_alarm(struct device * Use mc146818_avoid_UIP() to avoid this. */ if (!mc146818_avoid_UIP(cmos_set_alarm_callback, &p)) - return -EIO; + return -ETIMEDOUT; cmos->alarm_expires = rtc_tm_to_time64(&t->time); Patches currently in stable-queue which might be from mario.limonciello@xxxxxxx are queue-6.7/rtc-extend-timeout-for-waiting-for-uip-to-clear-to-1s.patch queue-6.7/rtc-mc146818-lib-adjust-failure-return-code-for-mc146818_get_time.patch queue-6.7/rtc-add-support-for-configuring-the-uip-timeout-for-rtc-reads.patch queue-6.7/rtc-cmos-use-acpi-alarm-for-non-intel-x86-systems-too.patch queue-6.7/rtc-adjust-failure-return-code-for-cmos_set_alarm.patch