[slime-devel] [slime-cvs] CVS slime

Helmut Eller heller at common-lisp.net
Thu Dec 15 14:46:07 UTC 2011


* Nikodemus Siivola [2011-12-15 13:20] writes:

> On 10 December 2011 14:34, CVS User heller <heller at common-lisp.net> wrote:
>
>> * swank.lisp (auto-flush-loop): Don't use call-with-io-timeout.
>> Removing it had no effect on the number of failed tests.  If you
>> want it back, first create a test case to demonstrate the problem.
>
> This is bastard to test, honestly. To test it we need to catch the
> system in a very transient state. One such state that can occur in
> SBCL looks like this:
>
> User thread T1: compiles stuff, grabs a system internal lock X...
>
> Auto flush thread T2: wants to flush, grabs lock on the stream. Due to
> methods added to gray streams by thread T1 the method cache has been
> invalidated, and in trying to update it tries to grab the same lock X
> -- and goes to sleep on it.
>
> T1: generates a compiler note, tries to write it to the stream locked
> by auto-flush threads --> deadlock.
>
> While the SBCL side of this problem is going to get a lot better
> soonish,

Has this problem any other side than the "SBCL side"?  I mean, I don't
see the bug in the SLIME code base.

> I'm still sad to see that timeout go away.

Well, that's hardly an excuse for "fixing" non-existent bugs.

Helmut





More information about the slime-devel mailing list