Re: 14.3-RELEASE gpart show output (?.?T) vs. 14.4 and 15.0 and main: why do 14.4 and 15.0 and main have some single significant digit (?T) size figures?
- Reply: Mark Millard : "Re: 14.3-RELEASE gpart show output (?.?T) vs. 14.4 and 15.0 and main: why do 14.4 and 15.0 and main have some single significant digit (?T) size figures?"
- In reply to: Zhenlei Huang : "Re: 14.3-RELEASE gpart show output (?.?T) vs. 14.4 and 15.0 and main: why do 14.4 and 15.0 and main have some single significant digit (?T) size figures?"
- Go to: [ bottom of page ] [ top of archives ] [ this month ]
Date: Sun, 19 Apr 2026 17:40:48 UTC
> On Apr 20, 2026, at 1:11 AM, Zhenlei Huang <zlei@FreeBSD.org> wrote:
>
>
>
>> On Apr 19, 2026, at 11:03 PM, Mark Millard <marklmi@yahoo.com> wrote:
>>
>> 14.3-RELEASE (more useful):
>>
>> => 40 1875384928 da1 GPT (894G)
>> => 40 2930277095 nda1 GPT (1.4T)
>> => 34 2930277101 da0 GPT (1.4T)
>> => 34 3907029101 nda0 GPT (1.8T)
>> => 34 4000797293 nda3 GPT (1.9T)
>>
>>
>> 14.4-RELEASE and 15.0-RELEASE and main (less useful):
>>
>> => 40 1875384928 da1 GPT (894G)
>> => 40 2930277095 nda1 GPT (1T)
>> => 34 2930277101 da0 GPT (1T)
>> => 34 3907029101 nda0 GPT (2T)
>> => 34 4000797293 nda3 GPT (2T)
>>
>
> It appears to be caused by 4f809ffec69c (gpart: add libxo support for "show" subcommand + man page updates) .
>
> Prior to the change the size was formatted to human friendly format by `fmtsize(pp->lg_mediasize))` which in turn calls
> ```
> humanize_number(buf, sizeof(buf), rawsz, "", HN_AUTOSCALE,
> HN_B | HN_NOSPACE | HN_DECIMAL);
> ```,
>
> now it is formatted with
> ```
> xo_emit(" ({h:size/%jd})\n", (intmax_t)pp->lg_mediasize);
> ```
>
> It appears that libxo does not handle well with numbers those exceed 10^12, ( 1 Terabyte in this case ).
Try this patch please, not a full fix for all the "size" column,
```
Author: Zhenlei Huang <zlei@FreeBSD.org>
Date: Mon Apr 20 01:38:21 2026 +0800
geom_part: Fix the format of size
diff --git a/lib/geom/part/geom_part.c b/lib/geom/part/geom_part.c
index 852eec2d790a..ca3c5f2c27c3 100644
--- a/lib/geom/part/geom_part.c
+++ b/lib/geom/part/geom_part.c
@@ -723,7 +723,7 @@ gpart_show_geom(struct ggeom *gp, const char *element, int show_providers)
}
if (idx)
xo_emit("]");
- xo_emit(" ({h:size/%jd})\n", (intmax_t)pp->lg_mediasize);
+ xo_emit(" ({h,hn-decimal:size/%jd})\n", (intmax_t)pp->lg_mediasize);
xo_close_instance(s);
first = end + 1;
}
```
>
>>
>> --
>> ===
>> Mark Millard
>> marklmi at yahoo.com <http://yahoo.com/>
>>
>>
>
> Best regards,
> Zhenlei
Best regards,
Zhenlei