diff options
-rw-r--r-- | kernel/time/alarmtimer.c | 6 |
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) { |