From: Daniel B. <da...@us...> - 2004-10-03 00:57:29
|
Update of /cvsroot/sbcl/sbcl/doc/internals-notes In directory sc8-pr-cvs1.sourceforge.net:/tmp/cvs-serv8613/doc/internals-notes Modified Files: threading-specials Log Message: 0.8.15.7 Threading fixes : - bind *restart-clusters* *handler-clusters* *condition-restarts* at thread entry: inter-thread restarts don't work (nor is it clear what they'd do if they did) - threads exit when their initial function returns, no need to call unix-exit (which may do interesting things with file buffers that we'd rather didn't happen) arrange_return_to_lisp_function wasn't restoring esp properly. Not sure it ever makes a difference in practice, but fix it anyway. Index: threading-specials =================================================================== RCS file: /cvsroot/sbcl/sbcl/doc/internals-notes/threading-specials,v retrieving revision 1.9 retrieving revision 1.10 diff -u -d -r1.9 -r1.10 --- threading-specials 16 Aug 2004 15:01:48 -0000 1.9 +++ threading-specials 3 Oct 2004 00:57:13 -0000 1.10 @@ -821,13 +821,13 @@ SB-VM:*STATIC-SPACE-FREE-POINTER* SB-VM:*INITIAL-DYNAMIC-SPACE-FREE-POINTER* -SB-VM:*CURRENT-CATCH-BLOCK* +SB-VM:*CURRENT-CATCH-BLOCK* ; bound at thread entry (in C) SB-VM:*STATIC-SYMBOLS* SB-VM:*CONTROL-STACK-START* ; safe, bound at thread entry SB-VM:*READ-ONLY-SPACE-FREE-POINTER* SB-VM:*BINDING-STACK-START* ; safe, bound at thread entry SB-VM:*CONTROL-STACK-END* ; safe, bound at thread entry -SB-VM::*CURRENT-UNWIND-PROTECT-BLOCK* +SB-VM::*CURRENT-UNWIND-PROTECT-BLOCK* ; bound at thread entry (in C) SB-VM::*FREE-TLS-INDEX* SB-VM::*BINDING-STACK-POINTER* SB-VM::*ALLOCATION-POINTER* ; may be mostly unused ? @@ -842,7 +842,7 @@ SB-IMPL::*CURRENT-UNWIND-PROTECT-BLOCK* SB-IMPL::*CURRENT-CATCH-BLOCK* SB-IMPL::*READ-ONLY-SPACE-FREE-POINTER* -SB-VM::*ALIEN-STACK* +SB-VM::*ALIEN-STACK* ; bound in create_thread_struct() SB-IMPL::*OBJECTS-PENDING-FINALIZATION* ; needs locking for writers @@ -965,12 +965,12 @@ SB-KERNEL:*UNIVERSAL-FUN-TYPE* SB-KERNEL:*COLD-INIT-COMPLETE-P* SB-KERNEL:*UNIVERSAL-TYPE* ; readonly -SB-KERNEL:*HANDLER-CLUSTERS* +SB-KERNEL:*HANDLER-CLUSTERS* ; bound per-thread SB-KERNEL:*EMPTY-TYPE* ; readonly SB-KERNEL:*MAXIMUM-ERROR-DEPTH* -SB-KERNEL:*CONDITION-RESTARTS* +SB-KERNEL:*CONDITION-RESTARTS* ; bound per-thread SB-KERNEL:*TYPE-SYSTEM-INITIALIZED* -SB-KERNEL:*RESTART-CLUSTERS* +SB-KERNEL:*RESTART-CLUSTERS* ; bound per-thread SB-KERNEL::*MAKE-VALUES-TYPE-CACHED-CACHE-VECTOR* SB-KERNEL::*BUILT-IN-CLASS-CODES* ; readonly SB-KERNEL::*DEF!STRUCT-TYPE-MAKE-LOAD-FORM-FUN* |