iostat: fix rounding errors in iostat -x

Better to round numbers instead of flooring them.

MFC after:	3 weeks
Sponsored by:	Axcient
This commit is contained in:
Alan Somers 2021-07-08 10:16:32 -06:00
parent 28f47a199c
commit 61631b24a1

View File

@ -888,17 +888,17 @@ devstats(int perf_select, long double etime, int havelast)
mb_per_second_write > ((long double).0005)/1024 ||
busy_pct > 0.5) {
if (Iflag == 0)
printf("%-8.8s %7d %7d %8.1Lf "
"%8.1Lf %5d %5d %5d %5d "
"%4" PRIu64 " %3.0Lf ",
printf("%-8.8s %7.0Lf %7.0Lf %8.1Lf "
"%8.1Lf %5.0Lf %5.0Lf %5.0Lf %5.0Lf"
" %4" PRIu64 " %3.0Lf ",
devicename,
(int)transfers_per_second_read,
(int)transfers_per_second_write,
transfers_per_second_read,
transfers_per_second_write,
mb_per_second_read * 1024,
mb_per_second_write * 1024,
(int)ms_per_read, (int)ms_per_write,
(int)ms_per_other,
(int)ms_per_transaction,
ms_per_read, ms_per_write,
ms_per_other,
ms_per_transaction,
queue_len, busy_pct);
else
printf("%-8.8s %11.1Lf %11.1Lf "