> From: Taylor R Campbell <campb...@mumble.net>
> Date: Tue, 18 Aug 2015 22:41:36 +0000
> 
> The use of WITHOUT-INTERRUPTS in gcfinal.scm was largely for interrupt
> safety, not just for exclusion between threads, so that hitting ^G at
> an inopportune moment would not leak scarce resources.  Please restore
> that property of it with appropriate WITHOUT-INTERRUPTION.

You got it!  Fixed in commit 9db45d6.

I also noticed a problem with the GC daemon.  I was thinking, early
on, that gc-daemons must continue to run without-interrupts, perhaps
even without concurrency (as the primitive GC daemons do).  I later
decided this was "totally" unnecessary and started adding with-thread-
mutex-try-lock to them, to punt rather than deadlock in the after-gc
interrupt.  In run-gc-finalizers, I should have also locked each
finalizer as it was cleaned.

_______________________________________________
MIT-Scheme-devel mailing list
MIT-Scheme-devel@gnu.org
https://lists.gnu.org/mailman/listinfo/mit-scheme-devel

Reply via email to