From: kernel test robot <lkp@intel.com>
To: Arun Iyengar via B4 Relay
<devnull+aiyengar1990.gmail.com@kernel.org>,
Alexandre Belloni <alexandre.belloni@bootlin.com>
Cc: oe-kbuild-all@lists.linux.dev, linux-rtc@vger.kernel.org,
linux-kernel@vger.kernel.org, stable@vger.kernel.org
Subject: Re: [PATCH] rtc: Don't lose a minute-resolution alarm that rounds down into the past
Date: Tue, 10 Nov 2026 19:01:53 +0800 [thread overview]
Message-ID: <202611101839.fRQuN29G-lkp@intel.com> (raw)
In-Reply-To: <20261110-rtc-minute-alarm-v1-1-be9d7c5227a1@gmail.com>
Hi Arun,
kernel test robot noticed the following build warnings:
[auto build test WARNING on 7485659ecb81d5fce3a3edf2cae9fcb29c17b1cd]
url: https://github.com/intel-lab-lkp/linux/commits/Arun-Iyengar-via-B4-Relay/rtc-Don-t-lose-a-minute-resolution-alarm-that-rounds-down-into-the-past/20261110-071347
base: 7485659ecb81d5fce3a3edf2cae9fcb29c17b1cd
patch link: https://lore.kernel.org/r/20261110-rtc-minute-alarm-v1-1-be9d7c5227a1%40gmail.com
patch subject: [PATCH] rtc: Don't lose a minute-resolution alarm that rounds down into the past
config: parisc-allnoconfig (https://download.01.org/0day-ci/archive/20261110/202611101839.fRQuN29G-lkp@intel.com/config)
compiler: hppa-linux-gcc (GCC) 16.2.0
reproduce (this is a W=1 build): (https://download.01.org/0day-ci/archive/20261110/202611101839.fRQuN29G-lkp@intel.com/reproduce)
If you fix the issue in a separate patch/commit (i.e. not just a new version of
the same patch/commit), kindly add following tags
| Reported-by: kernel test robot <lkp@intel.com>
| Closes: https://lore.kernel.org/oe-kbuild-all/202611101839.fRQuN29G-lkp@intel.com/
All warnings (new ones prefixed by >>):
In file included from include/linux/timer.h:6,
from include/linux/uprobes.h:18,
from include/linux/mm_types.h:16,
from include/linux/mmzone.h:22,
from include/linux/topology.h:34,
from include/linux/irq.h:19,
from arch/parisc/include/asm/hardirq.h:13,
from include/linux/hardirq.h:11,
from include/linux/interrupt.h:11,
from include/linux/rtc.h:18,
from drivers/rtc/interface.c:11:
drivers/rtc/interface.c: In function 'rtc_set_alarm':
>> drivers/rtc/interface.c:562:60: warning: integer overflow in expression of type 'long int' results in '-129542144' [-Woverflow]
562 | alarm_time = ktime_add_ns(down, 60 * NSEC_PER_SEC);
| ^
include/linux/ktime.h:60:50: note: in definition of macro 'ktime_add_ns'
60 | #define ktime_add_ns(kt, nsval) ((kt) + (nsval))
| ^~~~~
vim +562 drivers/rtc/interface.c
512
513 int rtc_set_alarm(struct rtc_device *rtc, struct rtc_wkalrm *alarm)
514 {
515 ktime_t alarm_time;
516 int err;
517
518 if (!rtc->ops)
519 return -ENODEV;
520 else if (!test_bit(RTC_FEATURE_ALARM, rtc->features))
521 return -EINVAL;
522
523 err = rtc_valid_tm(&alarm->time);
524 if (err != 0)
525 return err;
526
527 err = rtc_valid_range(rtc, &alarm->time);
528 if (err)
529 return err;
530
531 err = mutex_lock_interruptible(&rtc->ops_lock);
532 if (err)
533 return err;
534 if (rtc->aie_timer.enabled)
535 rtc_timer_remove(rtc, &rtc->aie_timer);
536
537 alarm_time = rtc_tm_to_ktime(alarm->time);
538 if (test_bit(RTC_FEATURE_ALARM_RES_MINUTE, rtc->features) &&
539 alarm->time.tm_sec) {
540 ktime_t down = ktime_sub_ns(alarm_time,
541 (u64)alarm->time.tm_sec * NSEC_PER_SEC);
542 struct rtc_time tm;
543 ktime_t now;
544
545 err = __rtc_read_time(rtc, &tm);
546 if (err)
547 goto unlock;
548 now = rtc_tm_to_ktime(tm);
549
550 /*
551 * Round down so we never miss a deadline. If that puts an alarm
552 * that is still in the future into the past, the timer would
553 * expire right away and the hardware alarm would never be
554 * armed: whoever relies on it, e.g. to wake the system from
555 * suspend, would wait forever. Round up to the next minute
556 * instead. An alarm already in the past is left alone, it is
557 * handled by __rtc_set_alarm.
558 */
559 if (ktime_after(down, now) || !ktime_after(alarm_time, now))
560 alarm_time = down;
561 else
> 562 alarm_time = ktime_add_ns(down, 60 * NSEC_PER_SEC);
563 }
564
565 rtc->aie_timer.node.expires = alarm_time;
566 rtc->aie_timer.period = 0;
567 if (alarm->enabled)
568 err = rtc_timer_enqueue(rtc, &rtc->aie_timer);
569
570 unlock:
571 mutex_unlock(&rtc->ops_lock);
572
573 return err;
574 }
575 EXPORT_SYMBOL_GPL(rtc_set_alarm);
576
--
0-DAY CI Kernel Test Service
https://github.com/intel/lkp-tests/wiki
next prev parent reply other threads:[~2026-11-10 11:02 UTC|newest]
Thread overview: 7+ messages / expand[flat|nested] mbox.gz Atom feed top
2026-11-10 7:13 [PATCH] rtc: Don't lose a minute-resolution alarm that rounds down into the past Arun Iyengar
2026-11-10 7:13 ` Arun Iyengar via B4 Relay
2026-11-10 7:29 ` sashiko-bot
2026-11-10 7:48 ` Alexandre Belloni
2026-11-12 9:00 ` Arun Iyengar
2026-11-10 11:01 ` kernel test robot [this message]
2026-11-10 14:31 ` kernel test robot
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=202611101839.fRQuN29G-lkp@intel.com \
--to=lkp@intel.com \
--cc=alexandre.belloni@bootlin.com \
--cc=devnull+aiyengar1990.gmail.com@kernel.org \
--cc=linux-kernel@vger.kernel.org \
--cc=linux-rtc@vger.kernel.org \
--cc=oe-kbuild-all@lists.linux.dev \
--cc=stable@vger.kernel.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.