diff options
Diffstat (limited to 'kernel/posix-timers.c')
-rw-r--r-- | kernel/posix-timers.c | 8 |
1 files changed, 5 insertions, 3 deletions
diff --git a/kernel/posix-timers.c b/kernel/posix-timers.c index 022c9c3cee6f..a9b04203a66d 100644 --- a/kernel/posix-timers.c +++ b/kernel/posix-timers.c | |||
@@ -767,9 +767,11 @@ common_timer_set(struct k_itimer *timr, int flags, | |||
767 | /* SIGEV_NONE timers are not queued ! See common_timer_get */ | 767 | /* SIGEV_NONE timers are not queued ! See common_timer_get */ |
768 | if (((timr->it_sigev_notify & ~SIGEV_THREAD_ID) == SIGEV_NONE)) { | 768 | if (((timr->it_sigev_notify & ~SIGEV_THREAD_ID) == SIGEV_NONE)) { |
769 | /* Setup correct expiry time for relative timers */ | 769 | /* Setup correct expiry time for relative timers */ |
770 | if (mode == HRTIMER_MODE_REL) | 770 | if (mode == HRTIMER_MODE_REL) { |
771 | timer->expires = ktime_add(timer->expires, | 771 | timer->expires = |
772 | timer->base->get_time()); | 772 | ktime_add_safe(timer->expires, |
773 | timer->base->get_time()); | ||
774 | } | ||
773 | return 0; | 775 | return 0; |
774 | } | 776 | } |
775 | 777 | ||