]> granicus.if.org Git - sysstat/commit
Merge branch 'portante-master'
authorSebastien GODARD <sysstat@users.noreply.github.com>
Fri, 25 Mar 2016 09:39:02 +0000 (10:39 +0100)
committerSebastien GODARD <sysstat@users.noreply.github.com>
Fri, 25 Mar 2016 09:39:02 +0000 (10:39 +0100)
commit8ab624f86faf6b131c04e418d04dfb9a3b324385
tree1e34f4374d4fd7907f5854820742b05cea24cd5f
parentd7153d69570852e82e321e1928619324d66d93d6
parent6dc2c71439047c24fd37d8d16eac0037de769199
Merge branch 'portante-master'

The cprintf_u64() function always reads passed parameters as unsigned
long long, even if the actual parameter is unsigned long or unsigned
int.
This does not work correctly on 32-bit systems, where sizeof(unsigned
long long) != sizeof(unsigned int). For example sar -q displays:

/tmp> sar -q 1 4
Linux 4.4.0-1-686-pae (vox)     22.03.2016      _i686_  (1 CPU)

23:50:00      runq-sz  plist-sz   ldavg-1   ldavg-5  ldavg-15   blocked
23:50:01    1408749273091 4294967297      0,73      0,67      0,60
1408749273088
23:50:02    1408749273090        73      0,75      0,67      0,60
1408749273088
23:50:03    1408749273090        75      0,75      0,67      0,60
1408749273088
23:50:04    1408749273090        75      0,75      0,67      0,60
1408749273088

Patch fixes the problem.

Signed-off-by: Sebastien GODARD <sysstat@users.noreply.github.com>
pidstat.c
pr_stats.c