On a machine I have running Ubuntu 64-bit I keep an SBCL core dump of a
LAN web server which is set up with a cron to launch in the event the
machine is restarted. A few weeks ago I installed 10.10 beta Ubuntu
Maverick on the machine, built a fresh copy of SBCL, rebuilt the core
and dumped it. It worked fine.
Yesterday, I did an "apt-get upgrade" to upgrade a number of libraries
that were causing problems in some other applications. When I restarted
the machine the webserver core didn't restart, giving this error
CORRUPTION WARNING in SBCL pid 1129(tid 140737353971456):
Memory fault at ae03e000 (pc=0x1000b80955, sp=0x7ffff4c726a0)
The integrity of this image is possibly compromised.
Continuing with fingers crossed.
Error: Problem running initialization hook #<FUNCTION
Unhandled memory fault at #x2AAAAE03E000.
Thinking that one of the basic libraries must have been updated, I
checked out the latest SBCL, rebuilt it, and rebuilt all my fasl's
before building the webserver core again. But it made no difference.
Now I don't know what to do. I can start emacs and slime, hand compile
the webserver and it runs just fine. But when I attempt to dump the core
then start it, I get exactly the same error message above each time.
$ uname -a
Linux golum 2.6.35-22-generic #33-Ubuntu SMP Sun Sep 19 20:32:27 UTC
2010 x86_64 GNU/Linux
This is SBCL 126.96.36.199, an implementation of ANSI Common Lisp.
More information about SBCL is available at <http://www.sbcl.org/>.
From: Attila Lendvai <attila.lendvai@gm...> - 2010-10-07 22:40:22
bringing it back to the list, as the solution was found:
> if you start a swank server, then this might be related:
> although not probable if it only happened after the some upgrades...
> Maybe low probability but good hunch, Attila. After browsing through
> that bug report I tried unsetting the swank *log-output* and it seems
> to fix it:
> (defun start-the-servers()
> (setf swank:*log-output* nil)
> (handler-bind ((serious-condition (lambda (c)
> (declare (ignore c))
> Now the question is why? Or maybe better, why now?
as far as i understand it should always crash, but Nikodemus has more
insight in this.
> Do I injure my code in any way from just leaving the swank:*log-output*
> set to NIL there?
i'm not sure, but i'm using the proposed solution in the bug report
for a good while now.