From: Daniel Barlow <dan_b@us...> - 2003-08-23 19:25:23
Update of /cvsroot/sbcl/sbcl/src/code
In directory sc8-pr-cvs1:/tmp/cvs-serv4298/src/code
Thread-safety and the SBCL standard library.
This is going to be a drag. So far we've mostly depended on
guesswork and on observing bugs to find places in the SBCL
code that are not thread safe and need rewriting or locking
until they are. As we dispose of the obvious cases, this
approach is going to start working less well for the obscure
doc/internals-notes/threading-specials lists all symbols in
SBCL with a '*' in their names, less the ones that clearly
aren't special variables at all (LIST*, DO*). Weed it and
RCS file: /cvsroot/sbcl/sbcl/src/code/target-thread.lisp,v
retrieving revision 1.9
retrieving revision 220.127.116.11
diff -u -d -r1.9 -r18.104.22.168
--- target-thread.lisp 16 Aug 2003 20:38:40 -0000 1.9
+++ target-thread.lisp 23 Aug 2003 19:25:19 -0000 22.214.171.124
@@ -125,8 +125,7 @@
(setf (waitqueue-data queue)
(delete pid (waitqueue-data queue))))))
-;;; this should probably only be called while holding the queue spinlock.
-;;; not sure
+;;; this should only be called while holding the queue spinlock.
(defun signal-queue-head (queue)
(let ((p (car (waitqueue-data queue))))
(when p (sb!unix:unix-kill p :sigcont))))
Get latest updates about Open Source Projects, Conferences and News.