[slime-devel] Emacs freezes completing keyword

Attila Lendvai attila.lendvai at gmail.com
Fri Aug 13 21:26:28 UTC 2010


> This problem is still occurring. Sometimes it happens, sometimes not.
> Killing the underlying Lisp process (sbcl) unfreezes Emacs. Here is the
> error message that appears in Emacs after killing SBCL in the buffer
> *slime-error*:


it's not necessarily what happens to you, but just in case...

SBCL has a *world-lock*, which is grabbed by with-compilation-unit,
which is used by an around method on asdf:operate on asdf:operation
(so, on any operation).

in the real world for example: doing a load-system, meeting the
debugger due to some compile error, going to the slime REPL,
initiating completion (so, in a different thread than the initial
load-system), hitting a method cache miss, and finally compiling a
method cache lambda... will end up in a deadlock.

you can break out emacs with C-g, and when you cancel or finish the
load-system on the lisp side, then your stuck slime worker threads
will also go away.

-- 
 attila




More information about the slime-devel mailing list