From 4bcaeb66d7095e4668bf076e8f4d7e3b6363e2f8 Mon Sep 17 00:00:00 2001 From: Nikodemus Siivola Date: Sun, 1 Jul 2007 15:03:34 +0000 Subject: [PATCH] 1.0.7.6: additional test case that fails under SB-LUTEX Buggrit, millenium hand and shrimp! --- NEWS | 2 ++ tests/threads.pure.lisp | 21 +++++++++++++++++++++ version.lisp-expr | 2 +- 3 files changed, 24 insertions(+), 1 deletion(-) diff --git a/NEWS b/NEWS index afa7fe63b..9897edaa0 100644 --- a/NEWS +++ b/NEWS @@ -7,6 +7,8 @@ changes in sbcl-1.0.8 relative to sbcl-1.0.7: and x86-64. * performance bug fix: GETHASH and (SETF GETHASH) are once again non-consing. + * bug fix: threads waiting on GET-FOREGROUND can be interrupted. + (reported by Kristoffer Kvello) * bug fix: backtrace construction is now more careful when making lisp-objects from pointers on the stack, to avoid creating bogus objects that can be seen by the GC. diff --git a/tests/threads.pure.lisp b/tests/threads.pure.lisp index f078b5b6d..6b58125ea 100644 --- a/tests/threads.pure.lisp +++ b/tests/threads.pure.lisp @@ -50,3 +50,24 @@ (condition-notify queue) (sleep 1) (assert (not (thread-alive-p thread))))) + +;;; GET-MUTEX should not be interruptible under WITHOUT-INTERRUPTS + +#+sb-thread +(with-test (:name without-interrupts+get-mutex + :fails-on :sb-lutex) + (let* ((lock (make-mutex)) + (foo (get-mutex lock)) + (thread (make-thread (lambda () + (sb-sys:without-interrupts + (with-mutex (lock) + :fini)))))) + (sleep 1) + (assert (thread-alive-p thread)) + (terminate-thread thread) + (sleep 1) + (assert (thread-alive-p thread)) + (release-mutex lock) + (sleep 1) + (assert (not (thread-alive-p thread))) + (assert (eq :fini (join-thread thread))))) diff --git a/version.lisp-expr b/version.lisp-expr index 8d02b1fda..d317cdce5 100644 --- a/version.lisp-expr +++ b/version.lisp-expr @@ -17,4 +17,4 @@ ;;; checkins which aren't released. (And occasionally for internal ;;; versions, especially for internal versions off the main CVS ;;; branch, it gets hairier, e.g. "0.pre7.14.flaky4.13".) -"1.0.7.5" +"1.0.7.6" -- 2.11.4.GIT