From 598d1ac85e87d9312b9fd3266908ab6a6768edc6 Mon Sep 17 00:00:00 2001 From: Alexander Motin Date: Wed, 6 Dec 2023 23:08:45 -0500 Subject: [PATCH] vmstat: Let libxo properly humanize -m numbers Raw numbers can be seen in json/xml or with --libxo=no-humanize. MFC after: 2 weeks --- usr.bin/vmstat/vmstat.c | 14 ++++++++------ 1 file changed, 8 insertions(+), 6 deletions(-) diff --git a/usr.bin/vmstat/vmstat.c b/usr.bin/vmstat/vmstat.c index 6d5f000f46a3..2aa58d77a1f0 100644 --- a/usr.bin/vmstat/vmstat.c +++ b/usr.bin/vmstat/vmstat.c @@ -1416,8 +1416,8 @@ domemstat_malloc(void) } } xo_open_container("malloc-statistics"); - xo_emit("{T:/%13s} {T:/%5s} {T:/%6s} {T:/%8s} {T:Size(s)}\n", - "Type", "InUse", "MemUse", "Requests"); + xo_emit("{T:/%16s} {T:/%4s} {T:/%5s} {T:/%3s} {T:Size(s)}\n", + "Type", "Use", "Memory", "Req"); xo_open_list("memory"); zones = memstat_malloc_zone_get_count(); for (mtp = memstat_mtl_first(mtlp); mtp != NULL; @@ -1426,10 +1426,12 @@ domemstat_malloc(void) memstat_get_count(mtp) == 0) continue; xo_open_instance("memory"); - xo_emit("{k:type/%13s/%s} {:in-use/%5ju} " - "{:memory-use/%5ju}{U:K} {:requests/%8ju} ", + xo_emit("{k:type/%16s/%s} " + "{[:4}{h,hn-decimal,hn-1000:in-use/%ju}{]:} " + "{[:5}{h,hn-decimal:memory-use/%ju}{]:} " + "{[:4}{h,hn-decimal,hn-1000:requests/%ju}{]:} ", memstat_get_name(mtp), (uintmax_t)memstat_get_count(mtp), - ((uintmax_t)memstat_get_bytes(mtp) + 1023) / 1024, + (uintmax_t)memstat_get_bytes(mtp), (uintmax_t)memstat_get_numallocs(mtp)); first = 1; xo_open_list("size"); @@ -1437,7 +1439,7 @@ domemstat_malloc(void) if (memstat_malloc_zone_used(mtp, i)) { if (!first) xo_emit(","); - xo_emit("{l:size/%d}", memstat_malloc_zone_get_size(i)); + xo_emit("{lh:size/%d}", memstat_malloc_zone_get_size(i)); first = 0; } }