From: Matt Birkholz Date: Wed, 22 Jul 2015 15:38:55 +0000 (-0700) Subject: Disable the "already locked!" assert when multi-processing. X-Git-Url: https://birchwood-abbey.net/git?a=commitdiff_plain;h=refs%2Fheads%2FSMP;p=mit-scheme.git Disable the "already locked!" assert when multi-processing. --- diff --git a/src/runtime/thread.scm b/src/runtime/thread.scm index 363d7f691..fc0be3853 100644 --- a/src/runtime/thread.scm +++ b/src/runtime/thread.scm @@ -41,7 +41,10 @@ USA. (eq? interrupt-mask/gc-ok (get-interrupt-enables))) (define-integrable (lock) - (%assert (not locked?) "lock: already locked!") + (%assert (not (and (eq? 1 processor-count) + ;; This happens when there is contention. It + ;; indicates a problem only when uni-processing. + locked?)) "lock: already locked!") (set-interrupt-enables! interrupt-mask/gc-ok) (%lock))