Bug #2586
Updated by msuraev over 6 years ago
The code in @gprs_ns.c@ uses nsvc_timer_elapsed_ms() which relies on osmo_gettimeofday() wrapper around gettimeofday() which is affected by discontinuous jumps in the system time (e.g., if the system administrator manually changes the system time). It's better to use monotonic clock via clock_gettime(CLOCK_MONOTONIC, ..) but this would requre replacing "@struct timeval@" with "@struct timespec@" for @timer_started@ in "@struct gprs_nsvc@". I'm not aware of any external extarnal users for this field but nevertheless we should properly change API/ABI version when doing so. On a related note: we should carefully check all the uses of @osmo_gettimeofday()@ for elapsed time calculations and replace it with monotonic clock.