kernel: POSIX: correcting time calculation in timer_gettime.
timer_gettime() internally uses k_timer_remaining_get() to get time remaining to expire. Time unit for k_timer_remaining_get is msec not ticks. Signed-off-by: Youvedeep Singh <youvedeep.singh@intel.com>
This commit is contained in:
parent
38a9a36b3e
commit
648230b51e
1 changed files with 3 additions and 3 deletions
|
@ -101,9 +101,9 @@ int timer_gettime(timer_t timerid, struct itimerspec *its)
|
|||
|
||||
if (timer->status == ACTIVE) {
|
||||
remaining = k_timer_remaining_get(&timer->ztimer);
|
||||
secs = remaining / sys_clock_ticks_per_sec;
|
||||
leftover = remaining - (secs * sys_clock_ticks_per_sec);
|
||||
nsecs = leftover * NSEC_PER_SEC / sys_clock_ticks_per_sec;
|
||||
secs = remaining / MSEC_PER_SEC;
|
||||
leftover = remaining - (secs * MSEC_PER_SEC);
|
||||
nsecs = leftover * NSEC_PER_MSEC;
|
||||
its->it_value.tv_sec = (s32_t) secs;
|
||||
its->it_value.tv_nsec = (s32_t) nsecs;
|
||||
} else {
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue