Re: [main has a fix for] armv7-on-aarch64 stuck at urdlck: I got a replication of the "ampere2" bulk build hangup problem on a Windows DevKit 2023
- Reply: Philip Paeps : "Re: [main has a fix for] armv7-on-aarch64 stuck at urdlck: I got a replication of the "ampere2" bulk build hangup problem on a Windows DevKit 2023"
- In reply to: Mark Millard : "[main has a fix for] Re: armv7-on-aarch64 stuck at urdlck: I got a replication of the "ampere2" bulk build hangup problem on a Windows DevKit 2023"
- Go to: [ bottom of page ] [ top of archives ] [ this month ]
Date: Fri, 26 Jul 2024 14:46:57 UTC
On Jul 25, 2024, at 09:48, Mark Millard <marklmi@yahoo.com> wrote: > Michal Meloun <mmel_at_FreeBSD.org> has committed a fix in main: > > See: > https://lists.freebsd.org/archives/dev-commits-src-main/2024-July/025399.html > > that starts with: > > From: Michal Meloun <mmel_at_FreeBSD.org> > Date: Thu, 25 Jul 2024 16:25:09 UTC > The branch main has been updated by mmel: > > URL: https://cgit.FreeBSD.org/src/commit/?id=5670b8cc3672d5a6bc2c41eb48d7d01343c43ad0 > > commit 5670b8cc3672d5a6bc2c41eb48d7d01343c43ad0 > Author: Michal Meloun <mmel@FreeBSD.org> > AuthorDate: 2024-07-24 15:11:27 +0000 > Commit: Michal Meloun <mmel@FreeBSD.org> > CommitDate: 2024-07-25 16:24:22 +0000 > > libthr: Preresolve selected EABI symbols on arm. > > Add the ability to pre-resolve architecture-specific EABI symbols and > use it on arm for selected EABI functions. These functions can be called > with rtld bind lock write-locked, so they should be resolved in forward. > > Reported by: Mark Millard <marklmi@yahoo.com>, John F Carr <jfc@mit.edu> > Reviewed by: kib, imp > MFC after: 1 week > Differential Revision: https://reviews.freebsd.org/D46104 > --- > lib/libthr/arch/aarch64/include/pthread_md.h | 5 +++ > lib/libthr/arch/amd64/include/pthread_md.h | 5 +++ > lib/libthr/arch/arm/Makefile.inc | 3 ++ > lib/libthr/arch/arm/thr_rtld_arm.c | 67 ++++++++++++++++++++++++++++ > lib/libthr/arch/i386/include/pthread_md.h | 5 +++ > lib/libthr/arch/powerpc/include/pthread_md.h | 5 +++ > lib/libthr/arch/riscv/include/pthread_md.h | 5 +++ > lib/libthr/thread/thr_private.h | 1 + > lib/libthr/thread/thr_rtld.c | 3 ++ > 9 files changed, 99 insertions(+) > > . . . https://pkg.freebsd.org/FreeBSD:15:armv7/base_latest/ has 15.snap20240726110821 and updating to it leads to avoiding the hang-up in my dlopen_test.c testing. It is based on: 126 static inline size_t 127 round_up(size_t size) 128 { 129 if (size % _thr_page_size != 0) 130 size = ((size / _thr_page_size) + 1) * 131 _thr_page_size; 132 return size; 133 } that uses the _aeabi_* routine(s) in standard armv7 builds. But that no longer causes the recursive locking deadlock problem. So, it looks like updating the kernel and world on ampere2 and enabling builds of main-armv7-default should no longer have main-armv7-default hang-up during graphviz installation (or analogous contexts). Hopefully, that means that main-armv7-default builds will then complete and be distributed. === Mark Millard marklmi at yahoo.com