Date: Mon, 3 Feb 2025 12:20:23 +0100 (CET) From: Ronald Klop <ronald-lists@klop.ws> To: =?UTF-8?Q?Klaus_K=C3=BCchemann?= <maciphone2@googlemail.com> Cc: freebsd-arm@freebsd.org Subject: Re: you`ll have to hack u-boot&kernel drivers Re: RPI5 16GB panic on boot Message-ID: <1780949667.5141.1738581623154@localhost> In-Reply-To: <0C65C3F9-50D3-4B27-BB72-6D1B579AF83A@googlemail.com> References: <1209610970.15723.1738490182716@localhost> <0C65C3F9-50D3-4B27-BB72-6D1B579AF83A@googlemail.com>
next in thread | previous in thread | raw e-mail | index | archive | help
------=_Part_5140_2134093021.1738581623146 Content-Type: text/plain; charset=utf-8; format=flowed Content-Transfer-Encoding: quoted-printable Hi Klaus, I was under the impression that the pre-16GB RPI5 were booting using ACPI d= evice enumeration. (https://wiki.freebsd.org/arm/Raspberry%20Pi%205) That i= s why I hoped the 16GB version to work similarly. I don't have a personal preference for one way or the other (ACPI vs DTB). Is your work available in a public repository somewhere? So I could try and= see if I can help somehow. Regards, Ronald. =20 Van: "Klaus K=C3=BCchemann" <maciphone2@googlemail.com> Datum: zondag, 2 februari 2025 18:06 Aan: Ronald Klop <ronald-lists@klop.ws>, freebsd-arm@freebsd.org Onderwerp: you`ll have to hack u-boot&kernel drivers Re: RPI5 16GB panic on= boot >=20 >=20 > > Am 02.02.2025 um 10:56 schrieb Ronald Klop <ronald-lists@klop.ws>: > > > > > > No valid device tree blob found! > > >=20 >=20 > For FreeBSD go the u-boot fdt-based way ! ( since all existing drivers re= ly on that).. > A device tree blob( dtb) is a compiled binary which is read in by u-boot = , > While a device tree source( dts) can be compiled into u-boot`kernel direc= tly=E2=80=A6. >=20 > Some steps further here. I just show you the things I=E2=80=99ve already = hacked ( in u-boot & fbsd-kernel), > Not showing you the things which have to be future-hacked into the kernel= :-), > it=E2=80=99ll be a massive hack because e.g because the RP1 chip has man= y things hanging behind pcie, > I have currently pcie detected in boot but there`s something more to do/= hack regarding DMA=E2=80=A6.. and so further and so on : >=20 > =E2=80=A6 > 4.05 dt-match: compatible: brcm,bcm2712 match: brcm,bcm2712=E2=80=A6. > =E2=80=A6 4.95 Loading 'bcm2712-rpi-cm5-cm5io.dtb' to 0x00000000 offset 0= x100 > 5.06 Read bcm2712-rpi-cm5-cm5io.dtb bytes 80587 hnd 0x198b > =E2=80=A6 5.84 MESS:00:00:05.184071:0: Loaded overlay =E2=80=9Adwc2=E2= =80=98=E2=80=A6 > 5.04 Loading 'u-boot.bin' to 0x00000000 offset 0x200000,, > 5.39 Read u-boot.bin bytes 694000 hnd 0x148d=E2=80=A6 > =E2=80=A6. > =E2=80=94=E2=80=94=E2=80=94=E2=80=94=E2=80=94=E2=80=94=E2=80=94=E2=80=94= =E2=80=94 > U-Boot 2025.01 (Jan 19 2025 - 06:10:39 +0100) >=20 > DRAM: 1020 MiB (effective 4 GiB) > RPI: Board rev 0x18 outside known range > RPI Unknown model (0xc04180) > Core: 25 devices, 12 uclasses, devicetree: board > MMC: mmc@fff000: 0, mmc@1100000: 1 > Loading Environment from FAT... ** Bad device specification mmc 1 ** > In: serial,usbkbd > Out: serial,vidconsole > Err: serial,vidconsole > Net: No ethernet found. >=20 > starting USB... > Bus usb@480000: USB DWC2 > scanning bus usb@480000 for devices... 1 USB Device(s) found > scanning usb for storage devices... 0 Storage Device(s) found > Hit any key to stop autoboot: 0 Cannot persist EFI variables without sy= stem partition > ** Booting bootflow '<NULL>' with efi_mgr > Booting: mmc 0 >=20 > =E2=80=94=E2=80=94=E2=80=94 > Consoles: EFI console =20 > Reading loader env vars from /efi/freebsd/loader.env > Setting currdev to disk0p1: > FreeBSD/arm64 EFI loader, Revision 3.0 > (Sat Feb 1 03:46:15 UTC 2025 root@fbsd5pro) >=20 > Command line arguments: loader.efi > Image base: 0x3e54d000 > EFI version: 2.100 > EFI Firmware: Das U-Boot (rev 8229.256) > Console: efi,comconsole (0) > Load Path: /\EFI\BOOT\BOOTAA64.EFI > Load Device: /VenHw(e61d73b9-a384-4acc-aeab-82e828f3628b,0000000000000= 000)/VenHw(e61d73b9-a384-4acc-aeab-82e828f3628b,6d00000004000000)/eMMC(0)/e= MMC(0)/HD(1,0x01,0,0x800,0x19000) > BootCurrent: 0000 > BootOrder: 0000[*] > BootInfo Path: /VenHw(e61d73b9-a384-4acc-aeab-82e828f3628b,00000000000= 00000)/VenHw(e61d73b9-a384-4acc-aeab-82e828f3628b,6d00000004000000)/eMMC(0)= /eMMC(0) > Ignoring Boot0000: Only one DP found > Trying ESP: /VenHw(e61d73b9-a384-4acc-aeab-82e828f3628b,0000000000000000)= /VenHw(e61d73b9-a384-4acc-aeab-82e828f3628b,6d00000004000000)/eMMC(0)/eMMC(= 0)/HD(1,0x01,0,0x800,0x19000) > Setting currdev to disk0p1: > Trying: /VenHw(e61d73b9-a384-4acc-aeab-82e828f3628b,0000000000000000)/Ven= Hw(e61d73b9-a384-4acc-aeab-82e828f3628b,6d00000004000000)/eMMC(0)/eMMC(0)/H= D(2,0x01,0,0x19800,0x9e6800) > Setting currdev to disk0p2: > Loading /boot/defaults/loader.conf > Loading /boot/defaults/loader.conf > Loading /boot/device.hints > Loading /boot/loader.conf > Loading /boot/loader.conf.local > / >=20 > =E2=80=94=E2=80=94=E2=80=94=E2=80=94 >=20 > Loading kernel=E2=80=A6 > =E2=80=94 >=20 > Booting [/boot/kernel/kernel]... =20 > Using DTB provided by EFI at 0x3e6da000. > Loading splash ok > ---<<BOOT>>--- > GDB: no debug ports present > KDB: debugger backends: ddb > KDB: current backend: ddb > WARNING: Cannot find freebsd,dts-version property, cannot check DTB compl= iance > Copyright (c) 1992-2025 The FreeBSD Project. > Copyright (c) 1979, 1980, 1983, 1986, 1988, 1989, 1991, 1992, 1993, 1994 > The Regents of the University of California. All rights reserved. > FreeBSD is a registered trademark of The FreeBSD Foundation. > FreeBSD 15.0-CURRENT #3: Sat Feb 1 16:02:48 UTC 2025 > root@fbsd5pro:/usr/obj/usr/src/arm64.aarch64/sys/GENERIC arm64 > FreeBSD clang version 19.1.7 (https://github.com/llvm/llvm-project.git ll= vmorg-19.1.7-0-gcd708029e0b2) > WARNING: WITNESS option enabled, expect reduced performance. > VT: init without driver. > real memory =3D 4290248704 (4091 MB) > avail memory =3D 4152508416 (3960 MB) > Starting CPU 1 (100) > Starting CPU 2 (200) > Starting CPU 3 (300) > FreeBSD/SMP: Multiprocessor System Detected: 4 CPUs > random: unblocking device. > random: entropy device external interface > kbd0 at kbdmux0 > ofwbus0: <Open Firmware Device Tree> > simplebus0: <Flattened device tree simple bus> on ofwbus0 > regfix0: <Fixed Regulator> on simplebus0 > regfix1: <Fixed Regulator> on simplebus0 > simplebus1: <Flattened device tree simple bus> on ofwbus0 > ofw_clkbus0: <OFW clocks bus> on ofwbus0 >=20 > =E2=80=94=E2=80=94=E2=80=94 >=20 > simple_mfd0: <Simple MFD (Multi-Functions Device)> mem 0x7d542000-0x7d542= eff on simplebus0 > bcm2835_firmware0: <BCM2835 Firmware> on simplebus0 > ofw_clkbus1: <OFW clocks bus> on bcm2835_firmware0 > =E2=80=94 >=20 > psci0: <ARM Power State Co-ordination Interface Driver> on ofwbus0 > smccc0: <ARM SMCCC v1.2> on psci0 >=20 > =E2=80=94=E2=80=94 > gic0: <ARM Generic Interrupt Controller> mem 0x107fff9000-0x107fff9fff,0x= 107fffa000-0x107fffbfff,0x107fffc000-0x107fffdfff,0x107fffe000-0x107fffffff= irq 86 on simplebus1 > gic0: pn 0x2, arch 0x2, rev 0x1, implementer 0x43b irqs 320 > =E2=80=94 > usbus1: 480Mbps High Speed USB v2.0 > ugen1.1: <DWCOTG OTG Root HUB> at usbus1 > uhub0 on usbus1 > uhub0: <DWCOTG OTG Root HUB, class 9/0, rev 2.00/1.00, addr 1> on usbus1 > bcm2835_cpufreq0: ARM 1500MHz, Core 500MHz, SDRAM 0MHz, Turbo OFF > CPU 0: ARM Cortex-A76 r4p1 affinity: 0 0 > Cache Type =3D <IDC,64 byte CWG,64 byte ERG,64 byte D-= cacheline,PIPT I-cache,64 byte I-cacheline> > Instruction Set Attributes 0 =3D <DP,RDM,Atomic,CRC32,SHA2,SHA1,AES+PMUL= L> > Instruction Set Attributes 1 =3D <RCPC-8.3,DCPoP> > Instruction Set Attributes 2 =3D <> > Processor Features 0 =3D <CSV3,CSV2,RAS,AdvSIMD+HP,FP+HP,EL3,EL2= ,EL1,EL0 32> > Processor Features 1 =3D <PSTATE.SSBS> > Processor Features 2 =3D <> > Memory Model Features 0 =3D <TGran4,TGran64,TGran16,SNSMem,BigEnd,1= 6bit ASID,1TB PA> > Memory Model Features 1 =3D <XNX,PAN+ATS1E1,LO,HPD+TTPBHA,VH,16bit = VMID,HAF+DS> > Memory Model Features 2 =3D <32bit CCIDX,48bit VA,IESB,UAO,CnP> > Memory Model Features 3 =3D <> > Memory Model Features 4 =3D <> > Debug Features 0 =3D <DoubleLock,2 CTX BKPTs,4 Watchpoints,6= Breakpoints,PMUv3p1,Debugv8p2> > Debug Features 1 =3D <> > Auxiliary Features 0 =3D <> > Auxiliary Features 1 =3D <> > AArch32 Instruction Set Attributes 5 =3D <RDM,CRC32,SHA2,SHA1,AES+VMULL,S= EVL> > AArch32 Media and VFP Features 0 =3D <FPRound,FPSqrt,FPDivide,DP VFPv3+v4= ,SP VFPv3+v4,AdvSIMD> > AArch32 Media and VFP Features 1 =3D <SIMDFMAC,FPHP Arith,SIMDHP Arith,SI= MDSP,SIMDInt,SIMDLS,FPDNaN,FPFtZ> > CPU 1: ARM Cortex-A76 r4p1 affinity: 1 0 > CPU 2: ARM Cortex-A76 r4p1 affinity: 2 0 > CPU 3: ARM Cortex-A76 r4p1 affinity: 3 0 > gic0: using for IPIs > Release APs...Trying to mount root from ufs:/dev/ufs/rootfs [rw].. > --- > =20 >=20 >=20 >=20 =20 ------=_Part_5140_2134093021.1738581623146 Content-Type: text/html; charset=utf-8 Content-Transfer-Encoding: quoted-printable <html><head></head><body>Hi Klaus,<br> <br> I was under the impression that the pre-16GB RPI5 were booting using ACPI d= evice enumeration. (<a href=3D"https://wiki.freebsd.org/arm/Raspberry%20Pi%= 205">https://wiki.freebsd.org/arm/Raspberry%20Pi%205)</a> That is why I hop= ed the 16GB version to work similarly.<br> I don't have a personal preference for one way or the other (ACPI vs DTB).<= br> <br> Is your work available in a public repository somewhere? So I could try and= see if I can help somehow.<br> <br> Regards,<br> Ronald.<br> <br> <p><strong>Van:</strong> "Klaus K=C3=BCchemann" <maciphone2@googlemail.c= om><br> <strong>Datum:</strong> zondag, 2 februari 2025 18:06<br> <strong>Aan:</strong> Ronald Klop <ronald-lists@klop.ws>, freebsd-arm= @freebsd.org<br> <strong>Onderwerp:</strong> you`ll have to hack u-boot&kernel drivers R= e: RPI5 16GB panic on boot</p> <blockquote style=3D"padding-right: 0px; padding-left: 5px; margin-left: 5p= x; border-left: #000000 2px solid; margin-right: 0px"> <div class=3D"MessageRFC822Viewer" id=3D"P"> <div class=3D"TextPlainViewer" id=3D"P.P"><br> <br> > Am 02.02.2025 um 10:56 schrieb Ronald Klop <ronald-lists@klop.ws>= ;:<br> ><br> ><br> > No valid device tree blob found!<br> ><br> <br> <br> For FreeBSD go the u-boot fdt-based way ! ( since all existing drivers rely= on that)..<br> A device tree blob( dtb) is a compiled binary which is read in by u-boot ,<= br> While a device tree source( dts) can be compiled into u-boot`kernel directl= y=E2=80=A6.<br> <br> Some steps further here. I just show you the things I=E2=80=99ve already ha= cked ( in u-boot & fbsd-kernel),<br> Not showing you the things which have to be future-hacked into the kernel:-= ),<br> it=E2=80=99ll be a massive hack because e.g because the RP1 chip has = many things hanging behind pcie,<br> I have currently pcie detected in boot but there`s something more to = do/hack regarding DMA=E2=80=A6.. and so further and so on :<br> <br> =E2=80=A6<br> 4.05 dt-match: compatible: brcm,bcm2712 match: brcm,bcm2712=E2= =80=A6.<br> =E2=80=A6 4.95 Loading 'bcm2712-rpi-cm5-cm5io.dtb' to 0x00000000 offset 0x1= 00<br> 5.06 Read bcm2712-rpi-cm5-cm5io.dtb bytes 805= 87 hnd 0x198b<br> =E2=80=A6 5.84 MESS:00:00:05.184071:0: Loaded overlay =E2=80=9A= dwc2=E2=80=98=E2=80=A6<br> 5.04 Loading 'u-boot.bin' to 0x00000000 offset 0x200000,,<br> 5.39 Read u-boot.bin bytes 694000 hnd 0x148d=E2=80= =A6<br> =E2=80=A6.<br> =E2=80=94=E2=80=94=E2=80=94=E2=80=94=E2=80=94=E2=80=94=E2=80=94=E2=80=94=E2= =80=94<br> U-Boot 2025.01 (Jan 19 2025 - 06:10:39 +0100)<br> <br> DRAM: 1020 MiB (effective 4 GiB)<br> RPI: Board rev 0x18 outside known range<br> RPI Unknown model (0xc04180)<br> Core: 25 devices, 12 uclasses, devicetree: board<br> MMC: mmc@fff000: 0, mmc@1100000: 1<br> Loading Environment from FAT... ** Bad device specification mmc 1 **<br> In: serial,usbkbd<br> Out: serial,vidconsole<br> Err: serial,vidconsole<br> Net: No ethernet found.<br> <br> starting USB...<br> Bus usb@480000: USB DWC2<br> scanning bus usb@480000 for devices... 1 USB Device(s) found<br> scanning usb for storage devices.= .. 0 Storage Device(s) found<br> Hit any key to stop autoboot: 0 Cannot persist EFI variables wi= thout system partition<br> ** Booting bootflow '<NULL>' with efi_mgr<br> Booting: mmc 0<br> <br> =E2=80=94=E2=80=94=E2=80=94<br> Consoles: EFI console <br> Reading loader env vars from /efi/freebsd/loader.en= v<br> Setting currdev to disk0p1:<br> FreeBSD/arm64 EFI loader, Revision 3.0<br> (Sat Feb 1 03:46:15 UTC 2025 root@fbsd5pro)<br> <br> Command line arguments: loader.efi<br> Image base: 0x3e54d000<br> EFI version: 2.100<br> EFI Firmware: Das U-Boot (rev 8229.256)<br> Console: efi,comconsole (0)<br> Load Path: /\EFI\BOOT\BOOTAA64.EFI<br> Load Device: /VenHw(e61d73b9-a384-4acc-aeab-82e828f3628b,= 0000000000000000)/VenHw(e61d73b9-a384-4acc-aeab-82e828f3628b,6d000000040000= 00)/eMMC(0)/eMMC(0)/HD(1,0x01,0,0x800,0x19000)<br> BootCurrent: 0000<br> BootOrder: 0000[*]<br> BootInfo Path: /VenHw(e61d73b9-a384-4acc-aeab-82e828f3628= b,0000000000000000)/VenHw(e61d73b9-a384-4acc-aeab-82e828f3628b,6d0000000400= 0000)/eMMC(0)/eMMC(0)<br> Ignoring Boot0000: Only one DP found<br> Trying ESP: /VenHw(e61d73b9-a384-4acc-aeab-82e828f3628b,0000000000000000)/V= enHw(e61d73b9-a384-4acc-aeab-82e828f3628b,6d00000004000000)/eMMC(0)/eMMC(0)= /HD(1,0x01,0,0x800,0x19000)<br> Setting currdev to disk0p1:<br> Trying: /VenHw(e61d73b9-a384-4acc-aeab-82e828f3628b,0000000000000000)/VenHw= (e61d73b9-a384-4acc-aeab-82e828f3628b,6d00000004000000)/eMMC(0)/eMMC(0)/HD(= 2,0x01,0,0x19800,0x9e6800)<br> Setting currdev to disk0p2:<br> Loading /boot/defaults/loader.conf<br> Loading /boot/defaults/loader.conf<br> Loading /boot/device.hints<br> Loading /boot/loader.conf<br> Loading /boot/loader.conf.local<br> /<br> <br> =E2=80=94=E2=80=94=E2=80=94=E2=80=94<br> <br> Loading kernel=E2=80=A6<br> =E2=80=94<br> <br> Booting [/boot/kernel/kernel]... = <br> Using DTB provided by EFI at 0x3e6da000.<br> Loading splash ok<br> ---<<BOOT>>---<br> GDB: no debug ports present<br> KDB: debugger backends: ddb<br> KDB: current backend: ddb<br> WARNING: Cannot find freebsd,dts-version property, cannot check DTB complia= nce<br> Copyright (c) 1992-2025 The FreeBSD Project.<br> Copyright (c) 1979, 1980, 1983, 1986, 1988, 1989, 1991, 1992, 1993, 1994<br= > The Regents of the University of California. All rights reserved.<br> FreeBSD is a registered trademark of The FreeBSD Foundation.<br> FreeBSD 15.0-CURRENT #3: Sat Feb 1 16:02:48 UTC 2025<br> root@fbsd5pro:/usr/obj/usr/src/arm64.aarch64/sys/GE= NERIC arm64<br> FreeBSD clang version 19.1.7 (<a href=3D"https://github.com/llvm/llvm-proje= ct.git">https://github.com/llvm/llvm-project.git</a> llvmorg-19.1.7-0-gcd70= 8029e0b2)<br> WARNING: WITNESS option enabled, expect reduced performance.<br> VT: init without driver.<br> real memory =3D 4290248704 (4091 MB)<br> avail memory =3D 4152508416 (3960 MB)<br> Starting CPU 1 (100)<br> Starting CPU 2 (200)<br> Starting CPU 3 (300)<br> FreeBSD/SMP: Multiprocessor System Detected: 4 CPUs<br> random: unblocking device.<br> random: entropy device external interface<br> kbd0 at kbdmux0<br> ofwbus0: <Open Firmware Device Tree><br> simplebus0: <Flattened device tree simple bus> on ofwbus0<br> regfix0: <Fixed Regulator> on simplebus0<br> regfix1: <Fixed Regulator> on simplebus0<br> simplebus1: <Flattened device tree simple bus> on ofwbus0<br> ofw_clkbus0: <OFW clocks bus> on ofwbus0<br> <br> =E2=80=94=E2=80=94=E2=80=94<br> <br> simple_mfd0: <Simple MFD (Multi-Functions Device)> mem 0x7d542000-0x7= d542eff on simplebus0<br> bcm2835_firmware0: <BCM2835 Firmware> on simplebus0<br> ofw_clkbus1: <OFW clocks bus> on bcm2835_firmware0<br> =E2=80=94<br> <br> psci0: <ARM Power State Co-ordination Interface Driver> on ofwbus0<br= > smccc0: <ARM SMCCC v1.2> on psci0<br> <br> =E2=80=94=E2=80=94<br> gic0: <ARM Generic Interrupt Controller> mem 0x107fff9000-0x107fff9ff= f,0x107fffa000-0x107fffbfff,0x107fffc000-0x107fffdfff,0x107fffe000-0x107fff= ffff irq 86 on simplebus1<br> gic0: pn 0x2, arch 0x2, rev 0x1, implementer 0x43b irqs 320<br> =E2=80=94<br> usbus1: 480Mbps High Speed USB v2.0<br> ugen1.1: <DWCOTG OTG Root HUB> at usbus1<br> uhub0 on usbus1<br> uhub0: <DWCOTG OTG Root HUB, class 9/0, rev 2.00/1.00, addr 1> on usb= us1<br> bcm2835_cpufreq0: ARM 1500MHz, Core 500MHz, SDRAM 0MHz, Turbo OFF<br> CPU 0: ARM Cortex-A76 r4p1 affinity: 0 0<br> &nb= sp; Cache Type =3D <IDC,64 byte CWG,6= 4 byte ERG,64 byte D-cacheline,PIPT I-cache,64 byte I-cacheline><br> Instruction Set Attributes 0 =3D <DP,RDM,Atomic,CRC32,SHA2,SHA1,AE= S+PMULL><br> Instruction Set Attributes 1 =3D <RCPC-8.3,DCPoP><br> Instruction Set Attributes 2 =3D <><br> Processor Features 0 = =3D <CSV3,CSV2,RAS,AdvSIMD+HP,FP+HP,EL3,EL2,EL1,EL0 32><br> Processor Features 1 = =3D <PSTATE.SSBS><br> Processor Features 2 = =3D <><br> Memory Model Features 0 =3D <TGran4,= TGran64,TGran16,SNSMem,BigEnd,16bit ASID,1TB PA><br> Memory Model Features 1 =3D <XNX,PAN= +ATS1E1,LO,HPD+TTPBHA,VH,16bit VMID,HAF+DS><br> Memory Model Features 2 =3D <32bit C= CIDX,48bit VA,IESB,UAO,CnP><br> Memory Model Features 3 =3D <><br= > Memory Model Features 4 =3D <><br= > &nb= sp;Debug Features 0 =3D <DoubleLock,2 CTX BKPTs,4 Watchpoints,6 Breakpoi= nts,PMUv3p1,Debugv8p2><br> &nb= sp;Debug Features 1 =3D <><br> Auxiliary Features 0 = =3D <><br> Auxiliary Features 1 = =3D <><br> AArch32 Instruction Set Attributes 5 =3D <RDM,CRC32,SHA2,SHA1,AES+VMULL,= SEVL><br> AArch32 Media and VFP Features 0 =3D <FPRound,FPSqrt,FPDivide,DP VFPv3+v= 4,SP VFPv3+v4,AdvSIMD><br> AArch32 Media and VFP Features 1 =3D <SIMDFMAC,FPHP Arith,SIMDHP Arith,S= IMDSP,SIMDInt,SIMDLS,FPDNaN,FPFtZ><br> CPU 1: ARM Cortex-A76 r4p1 affinity: 1 0<br> CPU 2: ARM Cortex-A76 r4p1 affinity: 2 0<br> CPU 3: ARM Cortex-A76 r4p1 affinity: 3 0<br> gic0: using for IPIs<br> Release APs...Trying to mount root from ufs:/dev/ufs/rootfs [rw]..<br> ---<br> </div> <hr></div> </blockquote> <br> </body></html> ------=_Part_5140_2134093021.1738581623146--
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?1780949667.5141.1738581623154>