Re: armv7 main's gpart [show]: signal 11 core dump during boot, before login; xo_format_string_direct; official pkgbase distribution (kernel and world)
Mark Millard <[email protected]>
| Newsgroups | gmane.os.freebsd.devel.arm,gmane.os.freebsd.current |
|---|---|
| Message-ID | <[email protected]> |
On Dec 28, 2025, at 08:54, Mark Millard <[email protected]> wrote: > [Resend including freebsd-arm.] > > On Dec 28, 2025, at 08:48, Mark Millard <[email protected]> wrote: > > [email protected] <js_at_FreeBSD.org> wrote on > Date: Sun, 28 Dec 2025 11:01:59 UTC : > >> I'll take a look at it and try to setup a reproducer, unfortunately my >> time is a bit limited during the holidays so I can't promise any quick >> fixes right now. >> >> Could you share the output of >> >> gpart --libxo:JP show >> >> with me? If possible. > > On the Orange Pi Plus 2e (Cortex-A7, not aarch64, > just armv7): > > # gpart --libxo:JP show > Segmentation fault (core dumped) > > I'll note that the 0x6e480000 in r0 that is shown > later below is the same failing address reported > in my original list submittal about the issue. > > > For reference: > > (gdb) bt > #0 strlen () at /usr/src/lib/libc/arm/string/strlen.S:46 > #1 0x20151020 in xo_format_string (xop=0x2009b120, xbp=0x2009b150, flags=4096, xfp=0xbfbfd1f8) at /usr/src/contrib/libxo/libxo/libxo.c:2966 > #2 xo_do_format_field (xop=<optimized out>, xop@entry=0x2009b120, xbp=0x2009b150, fmt=fmt@entry=0xbfbfd268 "%s", flen=<optimized out>, flags=4096) at /usr/src/contrib/libxo/libxo/libxo.c:3503 > #3 0x2014d0a8 in xo_simple_field (xop=0x2009b120, encode_only=0, value=0x0, vlen=0, fmt=0xbfbfd268 "%s", flen=2, flags=4096) at /usr/src/contrib/libxo/libxo/libxo.c:3817 > #4 xo_format_value (xop=<optimized out>, xop@entry=0x2009b120, name=name@entry=0x204bf931 "state}\n", nlen=nlen@entry=5, value=0x0, vlen=0, fmt=0xbfbfd268 "%s", flen=2, encoding=0x0, elen=0, > flags=4096) at /usr/src/contrib/libxo/libxo/libxo.c:4535 > #5 0x20148710 in xo_do_emit_fields (xop=<optimized out>, xop@entry=0x2009b120, fields=<optimized out>, fields@entry=0xbfbfd768, max_fields=max_fields@entry=17, fmt=<optimized out>) > at /usr/src/contrib/libxo/libxo/libxo.c:6372 > #6 0x201476a0 in xo_do_emit (xop=xop@entry=0x2009b120, flags=<optimized out>, fmt=fmt@entry=0x204bf8e3 "=>{t:start/%*jd} {t:sectors/%*jd} {t:name/%*s} {:scheme} ({h:size/%ld}){t:state}\n") > at /usr/src/contrib/libxo/libxo/libxo.c:6551 > #7 0x20147840 in xo_emit (fmt=0x204bf8e3 "=>{t:start/%*jd} {t:sectors/%*jd} {t:name/%*s} {:scheme} ({h:size/%ld}){t:state}\n") at /usr/src/contrib/libxo/libxo/libxo.c:6622 > #8 0x204d1fd4 in gpart_show_geom (gp=gp@entry=0x20089168, element=element@entry=0x204bfe51 "type", show_providers=show_providers@entry=0) at /usr/src/lib/geom/part/geom_part.c:654 > #9 0x204d1048 in gpart_show (req=0x20089000, fl=<optimized out>) at /usr/src/lib/geom/part/geom_part.c:793 > #10 0x000230dc in run_command (argc=0, argv=<optimized out>) at /usr/src/sbin/geom/core/geom.c:497 > #11 0x00022308 in main (argc=1, argv=0xbfbfed10) at /usr/src/sbin/geom/core/geom.c:861 > (gdb) list > . . . > I'll note that the details are different, but I get failures in an armv7 chroot on aarch64 that supports armv7 code. So that is another type of environment that might be of use based on pkgbase distribution materials. Your --libxo:JP command in that context gets some output before also getting a segmentation fault: # gpart --libxo:JP show { "__version": "1", "PART": [ { "start": 34, "sectors": 1000215149, "name": "nda0", "scheme": "GPT", "size": 2, "state": "(null)", "partitions": [ { "start": 34, "sectors": 2014, "free": true, "size": 2 }, { "start": 2048, "sectors": 532480, "index": 1, "name": "nda0p1", "type": "efi", "label": "EFI system partition", "rawtype": "c12a7328-f81f-11d2-ba4b-00a0c93ec93b", "size": 541854500 }, { "start": 534528, "sectors": 32768, "index": 2, "name": "nda0p2", "type": "ms-reserved", "label": "Microsoft reserved partition", "rawtype": "e3c9e316-0b5c-4db8-817d-f92df00215ae", "size": 541854500 }, { "start": 567296, "sectors": 997287936, "index": 3, "name": "nda0p3", "type": "ms-basic-data", "label": "Basic data partition", "rawtype": "ebd0a0a2-b9e5-4433-87c0-68b6b72699c7", "size": 541854500 }, { "start": 997855232, "sectors": 2359296, "index": 4, "name": "nda0p4", "type": "ms-recovery", "label": "(null)", "rawtype": "de94bba4-06d1-4d40-a16a-bfd50179d6ac", "size": 541854500 }, { "start": 1000214528, "sectors": 655, "free": true, "size": 2 } ] }, { "start": 34, "sectors": 2930277101, "name": "da0", "scheme": "GPT", "size": 0, "state": "(null)", "partitions": [ { "start": 34, "sectors": 32734, "free": true, "size": 0 }, { "start": 32768, "sectors": 501760, "index": 1, "name": "da0p1", "type": "efi", "label": "PBaseEFI", "rawtype": "c12a7328-f81f-11d2-ba4b-00a0c93ec93b", "size": 541854500 }, { "start": 534528, "sectors": 20971520, "index": 2, "name": "da0p2", "type": "freebsd-swap", "label": "PBaseSwp10", "rawtype": "516e7cb5-6ecf-11d6-8ff8-00022d09712b", "size": 541854500 }, { "start": 21506048, "sectors": 29360128, "index": 3, "name": "da0p3", "type": "freebsd-swap", "label": "PBaseSwp14", "rawtype": "516e7cb5-6ecf-11d6-8ff8-00022d09712b", "size": 541854500 }, { "start": 50866176, "sectors": 33554432, "index": 4, "name": "da0p4", "type": "freebsd-swap", "label": "PBaseSwp16", "rawtype": "516e7cb5-6ecf-11d6-8ff8-00022d09712b", "size": 541854500 }, "type": "freebsd-swap", "label": "PBaseSwp32", "rawtype": "516e7cb5-6ecf-11d6-8ff8-00022d09712b", "size": 541854500 }, { "start": 151529472, "sectors": 96468992, "index": 6, "name": "da0p6", "type": "freebsd-swap", "label": "PBaseSwp46", "rawtype": "516e7cb5-6ecf-11d6-8ff8-00022d09712b", "size": 541854500 }, { "start": 247998464, "sectors": 268435456, "index": 7, "name": "da0p7", "type": "freebsd-swap", "label": "PBaseSwp128", "rawtype": "516e7cb5-6ecf-11d6-8ff8-00022d09712b", "size": 541854500 }, { "start": 516433920, "sectors": 7340032, "index": 8, "name": "da0p8", "type": "freebsd-swap", "label": "PBaseSwp3p5", "rawtype": "516e7cb5-6ecf-11d6-8ff8-00022d09712b", "size": 541854500 }, { "start": 523773952, "sectors": 13096960, "free": true, "size": 0 }, { "start": 536870912, "sectors": 2357198848, "index": 9, "name": "da0p9", "type": "freebsd-ufs", "label": "PBaseUFS", "rawtype": "516e7cb6-6ecf-11d6-8ff8-00022d09712b", "size": 541854500 }, { "start": 2894069760, "sectors": 36207375, "free": true, "size": 0 } ] }Segmentation fault (core dumped) # gpart show => 34 1000215149 nda0 GPT (2)(null) 34 2014 - free - (2) 2048 532480 1 efi (517M) 534528 32768 2 ms-reserved (517M) 567296 997287936 3 ms-basic-data (517M) 997855232 2359296 4 ms-recovery (517M) 1000214528 655 - free - (2) => 34 2930277101 da0 GPT (0)(null) 34 32734 - free - (0) 32768 501760 1 efi (517M) 534528 20971520 2 freebsd-swap (517M) 21506048 29360128 3 freebsd-swap (517M) 50866176 33554432 4 freebsd-swap (517M) 84420608 67108864 5 freebsd-swap (517M) 151529472 96468992 6 freebsd-swap (517M) 247998464 268435456 7 freebsd-swap (517M) 516433920 7340032 8 freebsd-swap (517M) 523773952 13096960 - free - (0) 536870912 2357198848 9 freebsd-ufs (517M) 2894069760 36207375 - free - (0) Segmentation fault (core dumped) From an aarch64 context instead pf the armv7 chroot: # gpart show you have mail => 34 1000215149 nda0 GPT (477G) 34 2014 - free - (1007K) 2048 532480 1 efi (260M) 534528 32768 2 ms-reserved (16M) 567296 997287936 3 ms-basic-data (476G) 997855232 2359296 4 ms-recovery (1G) 1000214528 655 - free - (328K) => 34 2930277101 da0 GPT (1T) 34 32734 - free - (16M) 32768 501760 1 efi (245M) 534528 20971520 2 freebsd-swap (10G) 21506048 29360128 3 freebsd-swap (14G) 50866176 33554432 4 freebsd-swap (16G) 84420608 67108864 5 freebsd-swap (32G) 151529472 96468992 6 freebsd-swap (46G) 247998464 268435456 7 freebsd-swap (128G) 516433920 7340032 8 freebsd-swap (4G) 523773952 13096960 - free - (6G) 536870912 2357198848 9 freebsd-ufs (1T) 2894069760 36207375 - free - (17G) Here is a "diff -u" of the libxo:JP outputs: # diff -u gpart_show_armv7_failure_libxo_jp.txt gpart_show_aarch64_good_libxo_jp.txt --- gpart_show_armv7_failure_libxo_jp.txt 2025-12-28 10:27:57.985558000 -0800 +++ gpart_show_aarch64_good_libxo_jp.txt 2025-12-28 10:28:41.456968000 -0800 @@ -7,14 +7,14 @@ "sectors": 1000215149, "name": "nda0", "scheme": "GPT", - "size": 2, - "state": "(null)", + "size": 512110190592, + "state": "", "partitions": [ { "start": 34, "sectors": 2014, "free": true, - "size": 2 + "size": 1031168 }, { "start": 2048, @@ -24,7 +24,7 @@ "type": "efi", "label": "EFI system partition", "rawtype": "c12a7328-f81f-11d2-ba4b-00a0c93ec93b", - "size": 541854500 + "size": 272629760 }, { "start": 534528, @@ -34,7 +34,7 @@ "type": "ms-reserved", "label": "Microsoft reserved partition", "rawtype": "e3c9e316-0b5c-4db8-817d-f92df00215ae", - "size": 541854500 + "size": 16777216 }, { "start": 567296, @@ -44,7 +44,7 @@ "type": "ms-basic-data", "label": "Basic data partition", "rawtype": "ebd0a0a2-b9e5-4433-87c0-68b6b72699c7", - "size": 541854500 + "size": 510611423232 }, { "start": 997855232, @@ -54,13 +54,13 @@ "type": "ms-recovery", "label": "(null)", "rawtype": "de94bba4-06d1-4d40-a16a-bfd50179d6ac", - "size": 541854500 + "size": 1207959552 }, { "start": 1000214528, "sectors": 655, "free": true, - "size": 2 + "size": 335360 } ] }, @@ -69,14 +69,14 @@ "sectors": 2930277101, "name": "da0", "scheme": "GPT", - "size": 0, - "state": "(null)", + "size": 1500301910016, + "state": "", "partitions": [ { "start": 34, "sectors": 32734, "free": true, - "size": 0 + "size": 16759808 }, { "start": 32768, @@ -86,7 +86,7 @@ "type": "efi", "label": "PBaseEFI", "rawtype": "c12a7328-f81f-11d2-ba4b-00a0c93ec93b", - "size": 541854500 + "size": 256901120 }, { "start": 534528, @@ -96,7 +96,7 @@ "type": "freebsd-swap", "label": "PBaseSwp10", "rawtype": "516e7cb5-6ecf-11d6-8ff8-00022d09712b", - "size": 541854500 + "size": 10737418240 }, { "start": 21506048, @@ -106,7 +106,7 @@ "type": "freebsd-swap", "label": "PBaseSwp14", "rawtype": "516e7cb5-6ecf-11d6-8ff8-00022d09712b", - "size": 541854500 + "size": 15032385536 }, { "start": 50866176, @@ -116,12 +116,17 @@ "type": "freebsd-swap", "label": "PBaseSwp16", "rawtype": "516e7cb5-6ecf-11d6-8ff8-00022d09712b", - "size": 541854500 + "size": 17179869184 }, + { + "start": 84420608, + "sectors": 67108864, - "size": 541854500 + "size": 34359738368 }, { "start": 151529472, @@ -131,7 +136,7 @@ "type": "freebsd-swap", "label": "PBaseSwp46", "rawtype": "516e7cb5-6ecf-11d6-8ff8-00022d09712b", - "size": 541854500 + "size": 49392123904 }, { "start": 247998464, @@ -141,7 +146,7 @@ "type": "freebsd-swap", "label": "PBaseSwp128", "rawtype": "516e7cb5-6ecf-11d6-8ff8-00022d09712b", - "size": 541854500 + "size": 137438953472 }, { "start": 516433920, @@ -151,13 +156,13 @@ "type": "freebsd-swap", "label": "PBaseSwp3p5", "rawtype": "516e7cb5-6ecf-11d6-8ff8-00022d09712b", - "size": 541854500 + "size": 3758096384 }, { "start": 523773952, "sectors": 13096960, "free": true, - "size": 0 + "size": 6705643520 }, { "start": 536870912, @@ -167,13 +172,16 @@ "type": "freebsd-ufs", "label": "PBaseUFS", "rawtype": "516e7cb6-6ecf-11d6-8ff8-00022d09712b", - "size": 541854500 + "size": 1206885810176 }, { "start": 2894069760, "sectors": 36207375, "free": true, - "size": 0 + "size": 18538176000 } ] - }Segmentation fault (core dumped) + } + ] +} + === Mark Millard marklmi at yahoo.com