aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--kernel/time/alarmtimer.c6
1 files changed, 4 insertions, 2 deletions
diff --git a/kernel/time/alarmtimer.c b/kernel/time/alarmtimer.c
index b4bce62e47b2..41a925396830 100644
--- a/kernel/time/alarmtimer.c
+++ b/kernel/time/alarmtimer.c
@@ -466,8 +466,10 @@ static enum alarmtimer_restart alarm_handle_timer(struct alarm *alarm,
466{ 466{
467 struct k_itimer *ptr = container_of(alarm, struct k_itimer, 467 struct k_itimer *ptr = container_of(alarm, struct k_itimer,
468 it.alarm.alarmtimer); 468 it.alarm.alarmtimer);
469 if (posix_timer_event(ptr, 0) != 0) 469 if ((ptr->it_sigev_notify & ~SIGEV_THREAD_ID) != SIGEV_NONE) {
470 ptr->it_overrun++; 470 if (posix_timer_event(ptr, 0) != 0)
471 ptr->it_overrun++;
472 }
471 473
472 /* Re-add periodic timers */ 474 /* Re-add periodic timers */
473 if (ptr->it.alarm.interval.tv64) { 475 if (ptr->it.alarm.interval.tv64) {