diff options
author | Tobias Klauser <tklauser@distanz.ch> | 2013-07-13 14:46:21 +0200 |
---|---|---|
committer | Tobias Klauser <tklauser@distanz.ch> | 2013-07-13 14:46:21 +0200 |
commit | 22ed65468335a3d803b74db2d4ee39344a4543cc (patch) | |
tree | 856fa337b11d2d1f4d40e303a1574f92f8e84f14 /corking.h | |
parent | dd123b0fb6af4909aa30940a8dc34661e8b1c420 (diff) |
ifpps: Correct calculation of median values for CPU load
ifpps always reported the same values for median as for average in the
CPU load fields (usr, sys, idle, iowait). This is of course incorrect.
The bug was due to 3 sub-problems:
- Summing up long double values (m_cpu_*) in an uint64_t (all)
- Not using %Lf (for long double) in mvwprintw()
- Explicitely use floating point division in MEDIAN_EVEN
Fix the bug by summing up in a separate accumulator of type long double,
use the correct format string for long double and divide by 2.0 in
MEDIAN_EVEN to force the result to be (long) double.
Reported-by: Daniel Borkmann <dborkman@redhat.com>
Signed-off-by: Tobias Klauser <tklauser@distanz.ch>
Diffstat (limited to 'corking.h')
0 files changed, 0 insertions, 0 deletions