1
0
mirror of https://github.com/RIOT-OS/RIOT.git synced 2026-01-01 01:41:18 +01:00
Martine S. Lenders 212fe15786
xtimer: set now pointer correctly in _update_short_timers() loop
This fixes `xtimer` to use `xtimer_now64()` instead of `xtimer_now()`
for updating the `*now` variable during the iteration in
`_update_short_timers()` function. The same function is used to
initialize `*now` in `_timer_callback()` below.

While using `xtimer_now()` in this iteration step does not hinder the
proper execution of all timers in the short term timers (for those the
`xtimer` module only looks at the `start_time` member, not the
`long_start_time` member) at least for the current long term time window
(I did not test higher cases), it sets the `long_start_time` member to 0
for all timers following in the list of timers after this iteration
step. However, external modules that rely on this to be correct,
e.g. evtimer [1], fail their calculations when trying to compare to
the current value to `xtimer_now64()`.

[1] https://github.com/RIOT-OS/RIOT/blob/11f3d68/sys/evtimer/evtimer.c#L118-L121

Co-Authored-By: Cenk Gündoğan <mail+dev@gundogan.net>
2020-04-10 00:02:33 +02:00
..
2019-11-23 22:39:07 +01:00
2020-02-07 13:35:25 +01:00
2019-11-23 22:39:40 +01:00
2019-11-23 22:39:37 +01:00
2020-03-06 19:49:58 +01:00
2020-02-20 13:24:14 +01:00
2019-11-23 22:39:37 +01:00
2019-12-05 15:39:24 +01:00
2019-11-23 22:39:37 +01:00
2019-11-23 22:39:38 +01:00
2019-09-09 20:27:16 +02:00
2020-03-09 17:56:34 +01:00
2020-03-12 08:42:59 +01:00
2019-11-23 22:39:38 +01:00
2019-11-23 22:39:07 +01:00
2019-06-05 17:10:26 +02:00
2020-02-11 13:59:59 +01:00
2019-04-12 15:51:15 +02:00
2020-03-04 12:44:02 +01:00