Control: fixed -1 0.85-1

On Sun, Dec 16, 2012 at 04:44:04PM +0100, Rogier Wolff wrote:

> The variance, which is used to calculate the stdev, is stored in a
> 64-bit integer.
> 
> However, what we store there are the squares of the difference from
> the average. So if you have 70 second ping time (sometimes), the
> square of 70000 miliseconds becomes 4900 million! Quite a lot, but
> unlikely to overflow a 64-bit value.... However the calculation is
> done in microseconds.... Thus your 70 seconds is 70 million
> microseocnds, giving 4900 trillion (4.9 * 10^15) added to the running
> total every second or so, (as long as the average remains around
> zero). This can overflow a 64-bit variable in human-observable time.
> 
> I've modified the code to do the calculations in miliseconds from now
> on. This should buy us a factor of a million of margin. :-)

So, if I'm not mistaken this is
https://github.com/traviscross/mtr/commit/bc39728995df74dd0ab78feea9a8ecfc53579fce
and was ultimately included in 0.83. Marking the first Debian version
that has the fix.

Bernhard

Reply via email to