[Openmcl-devel] ccl crashes

R. Matthew Emerson rme at clozure.com
Tue Jan 19 16:33:55 PST 2010

On Jan 19, 2010, at 5:46 PM, Mario S. Mommer wrote:
> "R. Matthew Emerson" <rme at clozure.com> writes:
>> On Jan 19, 2010, at 4:23 PM, Mario S. Mommer wrote:
>>> the attached file contains some simple code that can be used to crash
>>> ccl 1.4. I downloaded ccl 1.4 using subversion. I'm running it on Ubuntu
>>> Jaunty (9.04), 64 bits, and on a stock kernel.
> [...]
>> How long?  Seconds, minutes, hours?  I've let it run for 10 minutes,
>> and no crash yet...
> Less than a minute, although sometimes it lasts for more than a few
> minutes. Ocasionally, it has lasted long enough for me to lose patience
> and kill it.

I'm not having any immediate luck duplicating it on either or

> No idea if this has anything to do with it, but starting ccl in gdb
> leads to an immediate segfault.
> mommer at padme:~/local/src/ccl$ gdb lx86cl64 
> GNU gdb 6.8-debian
> Copyright (C) 2008 Free Software Foundation, Inc.
> License GPLv3+: GNU GPL version 3 or later <http://gnu.org/licenses/gpl.html>
> This is free software: you are free to change and redistribute it.
> There is NO WARRANTY, to the extent permitted by law.  Type "show copying"
> and "show warranty" for details.
> This GDB was configured as "x86_64-linux-gnu"...
> (gdb) run
> Starting program: /home/mommer/local/src/ccl/lx86cl64 
> [Thread debugging using libthread_db enabled]
> [New Thread 0x7f001b9ce880 (LWP 11131)]
> Program received signal SIGSEGV, Segmentation fault.
> [Switching to Thread 0x7f001b9ce880 (LWP 11131)]
> 0x0000300040dfdcbf in ?? ()
> (gdb) bt
> #0  0x0000300040dfdcbf in ?? ()
> #1  0x000030004114088f in ?? ()
> #2  0x00007f001adbcff0 in ?? ()
> #3  0x00000000004120cc in toplevel_loop () at ../x86-subprims64.s:60
> Backtrace stopped: frame did not save the PC
> (gdb) quit
> The program is running.  Exit anyway? (y or n) EOF [assumed Y]
> mommer at padme:~/local/src/ccl$ 
> anything else to try for obtaining a good backtrace?

See http://trac.clozure.com/ccl/wiki/CclUnderGdb

It's important to source /path/to/ccl/lisp-kernel/linuxx8664/.gdbinit before running (to tell gdb what signals to pass to the lisp).  The lisp handles SIGSEGV itself all day long.

If you can get it to crash running under gdb, maybe that will help with getting a little more information.

More information about the Openmcl-devel mailing list