[Olsr-dev] Timing Bug in the Scheduler, with Patch
Hannes Gredler
(spam-protected)
Wed Jan 30 16:17:08 CET 2008
nice catch, many thanks !
added to CVS and HG.
/hannes
Andreas Jacobs wrote:
> Hi,
>
> I've found a bug in the scheduler that makes the scheduler poll less
> often than it should.
>
> Reason:
> After each iteration of the scheduler's main loop the scheduler
> calculates, how much time this iteration took, and then sleeps for the
> rest of the scheduler interval. The bug lies in the calculation of the
> elapsed time, which is converted from a tick count to a 'struct timeval'
> which consists of a seconds value and a microseconds value. The seconds
> are filled in correctly, but the microseconds field is filled a
> milliseconds value instead of a microseconds value.
>
> Consequently the elapsed time is always underestimated and afterwards
> the scheduler sleeps too long.
>
> Patch:
> - against recent mercurial revision (0fc82e1fb7ee)
> - introduces a new variable milliseconds to avoid calulation the
> milliseconds twice, as it is currently
> - corrects the line which sets the 'tv_usec' (microseconds) field of the
> 'struct timeval time_used'
>
> Regards
> Andreas
>
>
>
More information about the Olsr-dev
mailing list