Re: Build failure on FreeBSD/PowerPC 32-bit

Curtis Hamilton <[email protected]> Mon, 3 Feb 2025 19:35:29 -0500
Newsgroups gmane.lisp.steel-bank.general
Message-ID <CAP9EAicGdWV24N4r29pMEV6k=tHo_xh5wmqq8fS9fYNAUWevgA@mail.gmail.com>
Here are the results using "-DENABLE_PAGE_PROTECTION=0"

SB-XC:*FEATURES* =
(:PPC64 :GENCGC :64-BIT :ALIEN-CALLBACKS :ANSI-CL
:ANSI-COMPLIANT-LOAD-TRUENAME :BIG-ENDIAN :BSD :COMMON-LISP :COMPACT-SYMBOL
:COMPARE-AND-SWAP-VOPS :ELF :FREEBSD :GCC-TLS :GENERATIONAL
:IEEE-FLOATING-POINT
 :LINKAGE-SPACE :OS-PROVIDES-BLKSIZE-T :OS-PROVIDES-CLOSE-RANGE-WRAPPER
:OS-PROVIDES-DLADDR :OS-PROVIDES-DLOPEN :OS-PROVIDES-GETPROTOBY-R
:OS-PROVIDES-POLL :OS-PROVIDES-SUSECONDS-T :PACKAGE-LOCAL-NICKNAMES
 :SB-CORE-COMPRESSION :SB-DOC :SB-EVAL :SB-FUTEX :SB-LDB :SB-PACKAGE-LOCKS
:SB-SOURCE-LOCATIONS :SB-THREAD :SB-UNICODE :SB-XREF-FOR-INTERNALS :SBCL
:SOFT-CARD-MARKS :UNIX)
[building initial core file in "output/cold-sbcl.core":
lisp linkage table: page=0 n-entries=4772
writing 65536 bytes [1 page] from #<SB-FASL::GSPACE @#x4100000 :STATIC>
writing 34537472 bytes [527 pages] from #<SB-FASL::GSPACE @#x1000000000
:DYNAMIC>
writing 0 bytes [0 pages] from #<SB-FASL::GSPACE @#x4000000 :READ-ONLY>
movable dynamic space: 51 + 253 + 223 cons/code/mixed pages
/INITIAL-FUN=#X1001F58A86
done]
//testing for consistency of first and second GENESIS passes
//header files match between first and second GENESIS -- good
     4561.91 real      4317.41 user         4.48 sys
//entering make-target-2.sh
//doing warm init - compilation phase
This is SBCL 2.5.0.61-ff993cf60-WIP, an implementation of ANSI Common Lisp.
More information about SBCL is available at <http://www.sbcl.org/>.

SBCL is free software, provided as is, with absolutely no warranty.
It is mostly in the public domain; some portions are provided under
BSD-style licenses.  See the CREDITS and COPYING files in the
distribution for more information.
Initial page table:
     | Immobile Objects |
 Gen layout symbol   code  Boxed   Cons    Raw   Code  SmMix  Mixed  LgRaw
LgCode  LgMix Waste%       Alloc        Trig   Dirty GCs Mem-age
  6      0      0      0      0     51      0    253      0    223      0
   0      0    0.4    34404784     2000000     527   0  0.0000
Tot      0      0      0      0     51      0    253      0    223      0
   0      0    0.4    34404784 [3.2% of 1073741824 max]
fatal error encountered in SBCL pid 87393 pthread 0x810a12000:
GC invariant lost, file "thread.c", line 263

Welcome to LDB, a low-level debugger for the Lisp runtime environment.
ldb> backtrace
Backtrace:
ldb> quit
Really quit? [y] y
     3959.88 real         0.00 user         0.03 sys


On Mon, Feb 3, 2025 at 1:20 PM Douglas Katzman <[email protected]> wrote:

> gdb and SBCL don't go well together because SBCL uses SIGTRAP for
> perfectly ordinary events in the execution, making it so that you have to
> step over them.
> In addition, SIGSEGV is due to the fact that ppc64 at the revision you're
> building uses mprotect() to detect pages that have or have not been written
> by Lisp.  As of January 2022 the ppc64 architecture no longer uses SIGSEGV
> for that.  It may be possible to add -DENABLE_PAGE_PROTECTION=0 to your
> CFLAGS in the environment, which should disable page protection but I'm not
> sure how well it worked back then. The runtime cost is a slight increase in
> GC time, which is fine considering that GC is not the issue at hand.  So
> under gdb you should see this instead, which I realize is not significantly
> more helpful:
>
>
> (gdb) *run*
>
> Program received signal SIGTRAP, Trace/breakpoint trap.
>
> 0x000000100023827c in ?? ()
>
> Missing separate debuginfos, use: debuginfo-install
> glibc-2.17-326.el7_9.3.ppc64le
>

_______________________________________________
Sbcl-help mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/sbcl-help