Date: Tue, 25 Oct 2022 09:31:34 -0700 From: Mark Millard <marklmi@yahoo.com> To: Warner Losh <imp@bsdimp.com> Cc: bob prohaska <fbsd@www.zefox.net>, Klaus K??chemann <maciphone2@googlemail.com>, freebsd-arm <freebsd-arm@freebsd.org> Subject: Re: EDK2 on RPi3 was: Re: u-boot debug, was: Re: U-boot on RPI3, sees disk but won't boot it Message-ID: <3C132774-8FC5-4910-A2B2-AF83C72C44CC@yahoo.com> In-Reply-To: <CANCZdfpa3AaMwGHDSxaSafUBim_4eiXrYvrb5QMVSgjAJwED9g@mail.gmail.com> References: <136B9190-4C73-45FB-8B41-FEEF7C38A253@yahoo.com> <3A76826B-B4E6-4837-915E-C9E1172BEA20@yahoo.com> <DC32CA76-5072-4521-BCD8-CDF1512420D4@yahoo.com> <20221021175142.GA62386@www.zefox.net> <B90AA192-17B4-4FE3-8050-1E7889432ED4@yahoo.com> <0697DE1F-C626-4289-894A-4141CDF1B91B@yahoo.com> <71AB9FAC-EB00-48F0-B0DD-0629C2D3C8C0@googlemail.com> <5719632F-8A92-4784-88D8-EAE3F20F2FA3@yahoo.com> <20221024174930.GA79381@www.zefox.net> <DBA8B2E1-D596-4664-A6F3-893C43265317@yahoo.com> <20221025005012.GA80394@www.zefox.net> <605A6723-5D31-495C-8200-FD107115FC81@yahoo.com> <CANCZdfpa3AaMwGHDSxaSafUBim_4eiXrYvrb5QMVSgjAJwED9g@mail.gmail.com>
next in thread | previous in thread | raw e-mail | index | archive | help
On 2022-Oct-24, at 21:52, Warner Losh <imp@bsdimp.com> wrote: >=20 > On Mon, Oct 24, 2022 at 9:32 PM Mark Millard <marklmi@yahoo.com> = wrote: > On 2022-Oct-24, at 17:50, bob prohaska <fbsd@www.zefox.net> wrote: >=20 > . . . > >>=20 > > I've put the console output at > > http://www.zefox.net/~fbsd/rpi2/20221024/boot_console > > in case it's of interest. >=20 > . . . >=20 > I've not seen/noticed the following before: >=20 > QUOTE > ELF ldconfig path: /lib /usr/lib /usr/lib/compat /usr/local/lib = /usr/local/lib/compat/pkg /usr/local/lib/compat/pkg > Soft Float compatibility ldconfig path: > ldconfig: illegal option -- o > usage: ldconfig [-32] [-elf] [-Rimrv] [-f hints_file] [directory | = file ...] > END QUOTE >=20 > But, to my knowledge, "Soft Float" is not in use any more > (by default, anyway). It might be that something is left > over from long ago? Looking, I see: >=20 > I was sure that all attempts to use it in FreeBSD 12+ had been = removed.... > =20 > QUOTE > author Warner Losh <imp@FreeBSD.org> 2022-01-07 05:34:18 +0000 > committer Warner Losh <imp@FreeBSD.org> 2022-01-07 05:34:18 = +0000 > commit d418bc27e601ec6bba0506d0efb62eca5eda5ab8 (patch) > tree 14a7fb6ba93ab48d7e1c746a09e7d1d5de6f897e = /libexec/rc/rc.d/ldconfig > parent b68d6892ba8aa14470e94a408b43ce4d8b1761da (diff) > download src-d418bc27e601ec6bba0506d0efb62eca5eda5ab8.tar.gz > src-d418bc27e601ec6bba0506d0efb62eca5eda5ab8.zip >=20 > libsoft: Remove runtime ldconfig support for libsoft >=20 > Remove the runtime support for running ldconfig at boot to cache lists > of libsoft libbraries. > END QUOTE >=20 > ( Note: /libexec/rc/rc.d/ldconfig is installed to /etc/rc.d/ldconfig = .) >=20 > Your /etc/rc.d/ldconfig script seems to have not been updated > by use of etcupdate or mergemaster or other such. (How much > else is also out of date? How much of what you have for /etc/ > and the like goes back to 2022-Jan-07 or before?) >=20 > Yea... that seems likely... Can you confirm that I've not messed up > a merge somewhere? =20 I booted the RPi2B v1.1 that I have access to, using (long output line split for readability): # uname -apKU FreeBSD OPiP2E_RPI2v1p1 14.0-CURRENT FreeBSD 14.0-CURRENT #49 main-n258610-ba7319e9091b-dirty: Fri Oct 14 18:27:46 PDT 2022 = root@CA72_16Gp_ZFS:/usr/obj/BUILDs/main-CA7-nodbg-clang/usr/main-src/arm.a= rmv7/sys/GENERIC-NODBG-CA7 arm armv7 1400072 1400072 (It also has a armv7 EFI loader from the closest artifact build before the change that broke armv7 for that. I've not yet updated to recent enough to have your fix.) My updates track /etc/ changes via etcupdate in the scripts I use (etcupdate since git). I do not get any of the lines: Soft Float compatibility ldconfig path: ldconfig: illegal option -- o usage: ldconfig [-32] [-elf] [-Rimrv] [-f hints_file] [directory | file = ...] I'll note that the man arch lists "soft" in some places in the Floating Point table, just not for armv7. Showing the ones that do list "soft": Floating Point Architecture float, double long double aarch64 hard soft, quad precision . . . mips soft identical to double mipsel soft identical to double . . . mipsn32 soft identical to double mips64 soft identical to double mips64el soft identical to double . . . riscv64sf soft soft, quad precision aarch64 and riscv64sf would apply to main [so: 14] for long double. But I'm unsure of any implications for "Soft Float compatibility ldconfig path". For reference: # grep -i soft /etc/rc.d/ldconfig # # more /etc/rc.d/ldconfig=20 #!/bin/sh # # $FreeBSD$ # # PROVIDE: ldconfig # REQUIRE: FILESYSTEMS # BEFORE: DAEMON . /etc/rc.subr name=3D"ldconfig" desc=3D"Configure the shared library cache" ldconfig_command=3D"/sbin/ldconfig" start_cmd=3D"ldconfig_start" stop_cmd=3D":" ldconfig_start() { local _files _ins _ins=3D ldconfig=3D${ldconfig_command} checkyesno ldconfig_insecure && _ins=3D"-i" if [ -x "${ldconfig_command}" ]; then _LDC=3D"/lib /usr/lib" for i in ${ldconfig_local_dirs}; do if [ -d "${i}" ]; then _files=3D`find ${i} -type f` if [ -n "${_files}" ]; then = ldconfig_paths=3D"${ldconfig_paths} `cat ${_files} | sort -u`" fi fi done for i in ${ldconfig_paths} /etc/ld-elf.so.conf; do if [ -r "${i}" ]; then _LDC=3D"${_LDC} ${i}" fi done startmsg 'ELF ldconfig path:' ${_LDC} ${ldconfig} -elf ${_ins} ${_LDC} machine_arch=3D$(sysctl -n hw.machine_arch) case ${machine_arch} in amd64|mips64|powerpc64) for i in ${ldconfig_local32_dirs}; do if [ -d "${i}" ]; then _files=3D`find ${i} -type f` if [ -n "${_files}" ]; then = ldconfig32_paths=3D"${ldconfig32_paths} `cat ${_files} | sort -u`" fi fi done _LDC=3D"" for i in ${ldconfig32_paths}; do if [ -r "${i}" ]; then _LDC=3D"${_LDC} ${i}" fi done startmsg '32-bit compatibility ldconfig path:' = ${_LDC} ${ldconfig} -32 ${_ins} ${_LDC} ;; esac fi } load_rc_config $name run_rc_command "$1" By contrast, = https://cgit.freebsd.org/src/tree/libexec/rc/rc.d/ldconfig?h=3Dreleng/12.4= still has the code: case `sysctl -n hw.machine_arch` in armv[67]) for i in ${ldconfig_localsoft_dirs}; do if [ -d "${i}" ]; then _files=3D`find ${i} -type f` if [ -n "${_files}" ]; then = ldconfigsoft_paths=3D"${ldconfigsoft_paths} `cat ${_files} | sort -u`" fi fi done _LDC=3D"" for i in ${ldconfigsoft_paths}; do if [ -r "${i}" ]; then _LDC=3D"${_LDC} ${i}" fi done check_startmsgs && echo 'Soft Float compatibility ldconfig = path:' ${_LDC} ${ldconfig} -soft ${_ins} ${_LDC} ;; esac As does = https://cgit.freebsd.org/src/tree/libexec/rc/rc.d/ldconfig?h=3Dreleng/13.1= . As does = https://cgit.freebsd.org/src/tree/libexec/rc/rc.d/ldconfig?h=3Dstable/13 = . So it looks like only main [so: 14] has that code removed. =3D=3D=3D Mark Millard marklmi at yahoo.com
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?3C132774-8FC5-4910-A2B2-AF83C72C44CC>