[Bug 264192] lang/ghc: poudriere based build used odd mix of devel/llvm10 and system toolchain

From: <bugzilla-noreply_at_freebsd.org>
Date: Sun, 28 Aug 2022 20:55:40 UTC
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=264192

--- Comment #50 from Mark Millard <marklmi26-fbsd@yahoo.com> ---
(In reply to Mark Millard from comment #49)

On the OPi+2e (so a Cortex-A7 form of armv7 -- without aarch64 present),
UFS context, I tried:

# /usr/local/llvm12/bin/llc -O1 -enable-tbaa -relocation-model=static
-mcpu=generic -mattr=+strict-align ghc2478_0/ghc_6.bc -o ghc2478_0/ghc_7.lm_s

Ultimately, lcc on the OPi+2e, processing the ghx_6.bc in question,
got:

# /usr/local/llvm12/bin/llc -O1 -enable-tbaa -relocation-model=static
-mcpu=generic -mattr=+strict-align ghc2478_0/ghc_6.bc -o ghc2478_0/ghc_7.lm_s
LLVM ERROR: out of memory
Allocation failed
PLEASE submit a bug report to https://bugs.llvm.org/ and include the crash
backtrace.
Stack dump:
0.      Program arguments: /usr/local/llvm12/bin/llc -O1 -enable-tbaa
-relocation-model=static -mcpu=generic -mattr=+strict-align ghc2478_0/ghc_6.bc
-o ghc2478_0/ghc_7.lm_s
1.      Running pass 'Function Pass Manager' on module 'ghc2478_0/ghc_6.bc'.
2.      Running pass 'ARM Instruction Selection' on function
'@"clp2g_info$def"'
#0 0x221ac0a0 llvm::sys::PrintStackTrace(llvm::raw_ostream&, int)
(/usr/local/llvm12/bin/../lib/libLLVM-12.so+0x20ac0a0)
#1 0x221a9d1c llvm::sys::RunSignalHandlers()
(/usr/local/llvm12/bin/../lib/libLLVM-12.so+0x20a9d1c)
#2 0x221acd08 (/usr/local/llvm12/bin/../lib/libLLVM-12.so+0x20acd08)
#3 0x24d2eed8 handle_signal /usr/main-src/lib/libthr/thread/thr_sig.c:0:3
Abort trap (core dumped)

But it was interesting to watch: direct armv7 does not limit processes to
2 GiBytes of SIZE (as top lables it) but keeps the RES under 2 GiBytes
--but aarch64's handling of chroot to armv7 prevents getting to such a
state if I remember right. On the OPi+2e, before the failure:

  PID   JID USERNAME    PRI NICE     SIZE       RES STATE    C   TIME     CPU
COMMAND
 1291     0 root         25    0   2489Mi    1705Mi biowr    2  23:02   6.72%
/usr/local/llvm12/bin/llc -O1 -enable-tbaa -relocation-model=static
-mcpu=generic -mattr=+strict-align ghc2478_0/ghc_6.bc

For reference, from shortly before the process did fail for out of memory:
(modified variant of top that tracks various "Maximum Observed" figures)

Mem: . . ., 1680Mi MaxObsActive, 190356Ki MaxObsWired, 1932Mi
MaxObs(Act+Wir+Lndry)
Swap: 3072Mi Total, 1014Mi Used, 2058Mi Free, 33% Inuse, 1014Mi MaxObsUsed,
2708Mi MaxObs(Act+Lndry+SwapUsed), 2888Mi MaxObs(Act+Wir+Lndry+SwapUsed)

I'm rerunning with time -l and will report the result.

-- 
You are receiving this mail because:
You are on the CC list for the bug.
You are the assignee for the bug.