On Sun, Apr 27, 2025 at 4:35 AM Su Hui <suhui@xxxxxxxxxxxx> wrote: > > 'clockid' only can be ALARM_REALTIME and ALARM_BOOTTIME. It's impossible > to return -1 and callers never check the value of -1. > > Only alarm_clock_get_timespec(), alarm_clock_get_ktime(), > alarm_timer_create() and alarm_timer_nsleep() call clock2alarm(). These > callers using clockid_to_kclock() to get 'struct k_clock', this ensures > clock2alarm() never returns -1. > > Signed-off-by: Su Hui <suhui@xxxxxxxxxxxx> > --- > v2: > - No Change. > kernel/time/alarmtimer.c | 6 +++--- > 1 file changed, 3 insertions(+), 3 deletions(-) > > diff --git a/kernel/time/alarmtimer.c b/kernel/time/alarmtimer.c > index 0ddccdff119a..e5450a77ada9 100644 > --- a/kernel/time/alarmtimer.c > +++ b/kernel/time/alarmtimer.c > @@ -515,9 +515,9 @@ static enum alarmtimer_type clock2alarm(clockid_t clockid) > { > if (clockid == CLOCK_REALTIME_ALARM) > return ALARM_REALTIME; > - if (clockid == CLOCK_BOOTTIME_ALARM) > - return ALARM_BOOTTIME; > - return -1; > + > + /* CLOCK_BOOTTIME_ALARM case */ > + return ALARM_BOOTTIME; So, I think your change is a good one, as the error case of -1 is never checked. But it might be worth adding a WARN_ON_ONCE() if the clockid isn't CLOCK_REALTIME_ALARM or CLOCK_BOOTTIME_ALARM, just so there aren't any surprises if someone misuses the function. thanks -john