Bug#599967: ecl: FTBFS on ia64: Lisp initialization error. / Bad address
Samuel Thibault
sthibault at debian.org
Fri Dec 31 17:47:12 UTC 2010
Cyril Brulebois, le Tue 12 Oct 2010 15:27:44 +0200, a écrit :
> | ;;; Loading src:lsp;helpfile.lsp
> | Internal or unrecoverable error in:
> |
> | Lisp initialization error.
> |
> | [14: Bad address]
> | /bin/bash: line 4: 3868 Aborted ECLDIR=`pwd`/ ./ecl_min compile
> | make[2]: *** [bin/ecl] Error 134
strace file shows:
open("/home/sthibault/ecl-10.3.1/src/lsp/helpfile.lsp", O_RDONLY) = 6
mprotect(0x6000000000968000, 16384, PROT_READ|PROT_WRITE) = 0
lseek(6, 0, SEEK_SET) = 0
read(6, ";;;; -*- Mode: Lisp; Syntax: Co"..., 8192) = 8192
mprotect(0x6000000000968000, 16384, PROT_READ|PROT_WRITE) = 0
mprotect(0x600000000096c000, 16384, PROT_READ|PROT_WRITE) = 0
...
mprotect(0x6000000000978000, 16384, PROT_READ|PROT_WRITE) = 0
mprotect(0x60000000008bc000, 16384, PROT_READ|PROT_WRITE) = 0
mprotect(0x600000000025c000, 16384, PROT_READ|PROT_WRITE) = 0
mprotect(0x6000000000254000, 262144, PROT_READ) = 0
mprotect(0x6000000000294000, 262144, PROT_READ) = 0
mprotect(0x60000000002d4000, 4669440, PROT_READ) = 0
mprotect(0x6000000000748000, 3424256, PROT_READ) = 0
rt_sigprocmask(SIG_BLOCK, NULL, [INT], 8) = 0
--- SIGSEGV (Segmentation fault) @ 4000000000196f61 (6000000000914f70) ---
mprotect(0x6000000000914000, 16384, PROT_READ|PROT_WRITE) = 0
rt_sigreturn() = ? (mask now [INT ILL ABRT FPE])
--- SIGSEGV (Segmentation fault) @ 4000000000197010 (60000000008daf38) ---
mprotect(0x60000000008d8000, 16384, PROT_READ|PROT_WRITE) = 0
rt_sigreturn() = ? (mask now [INT ILL ABRT FPE])
...
mprotect(0x6000000000954000, 16384, PROT_READ|PROT_WRITE) = 0
mprotect(0x60000000008f8000, 16384, PROT_READ|PROT_WRITE) = 0
read(6, 0x6000000000969000, 8192) = -1 EFAULT (Bad address)
Apparently, parsing helpfile.lsp triggers a GC, which marks the whole
memory as read-only, and the subsequent read thus fails with EFAULT,
which ecl is not able to deal with. On i386, such GC doesn't happen,
thus no issue.
Samuel
More information about the pkg-common-lisp-devel
mailing list