[f7a78d] by Nikodemus Siivola
tweak tail merging logic
TAIL-ANNOTATE used MERGE-TAIL-CALLS policy (which is an integer) as a
Since adding a debug-catch-tag effectively prevents TCO, and the policy
[2a9b33] by Joshua Elsasser
Fix errno value for sb-posix rmdir.error.3 test on OpenBSD.
Use #+bsd instead of #+(or darwin openbsd) on the assumption that all
[dcf7b5] by Nikodemus Siivola
sb-bsd-sockets: gethostbyname and gethostbyaddr are not thread safe
...or re-entrant. Need to disable interrupts and grab a lock.
Affects only platforms without getaddrinfo.
Correct the size of memory leak fixed in last commit in NEWS -- it
[ab5427] by Nikodemus Siivola
sb-bsd-sockets: check for MAKE-ALIEN success in GET-PROTOCOL-BY-NAME
Currently of malloc fails it returns a null alien.
[78eea0] by Nikodemus Siivola
sb-bsd-sockets: GET-ADDRESS-INFO foreign memory leak
* We were using MAKE-ALIEN and not freeing the memory.
* We were calling FREE-ADDRINFO, not FREEADDRINFO: the first is an
[71c5af] by Nikodemus Siivola
sb-bsd-sockets: foreign memory leak in GET-PROTOCOL-BY-NAME
I blame WITH-ALIEN usage -- it masks the MAKE-ALIEN calls
[18a1f7] by Nikodemus Siivola
sb-concurrency: GATE tweak, fix building without threads
* OPEN-GATE wasn't interrupt-safe. Don't want to have an interrupt unwind
* Disable tests needing threads on unithread builds, add one that
Also: many thanks to Tobias Rittweiler on whose code the GATE implementation
[1ecff2] by Nikodemus Siivola
timeouts on semaphores and mailboxes, fix timeouts on condition variables
* Accidentally put in the version of condition variable timeouts that just
* The issue with mailbox tests on Darwin at least appears to be related
[d6f967] by Nikodemus Siivola
killing lutexes, adding timeouts
* Remove all lutex-specific code from the system.
Performance implications: SB-FUTEX builds should perform pretty much the
1. Threads idling on semaphores or condition variables aren't quite as
2. Contested locking around operations that take considerably longer
3. Contested locking around operations that don't take long is an order
4. Highly active semaphores perform much better. (Follows from #3.)
* GRAB-MUTEX gets timeout support on all platforms.
* CONDITION-WAIT gets timeout support.
* Disable a bunch of prone-to-hang thread tests on Darwin. (All of them
* Enable a bunch tests that now /pass/ on Darwin. \o/ This doesn't mean that
...but still not robust enough to enable threads on Darwin by default.
* GET-MUTEX/GRAB-MUTEX get refactored into two main parts: %TRY-MUTEX and
[ecfd15] by Jim Wise
Skip testl fcntl.flock.2 on NetBSD.
[b2036b] by Nikodemus Siivola
nuke the age-old experimental-thread.patch
Not pertinent anymore.
[a53e74] by Alastair Bridgewater , pushed by Alastair Bridgewater
Improve some test cases for fixnum-width independence
* In arith.pure.lisp, some test cases were defined in terms of
* In sb-aclrepl, the bignum used for testing fit within an
* Thanks to Paul Khuong for finding and fixing the arith.pure.lisp
[e57523] by Alastair Bridgewater , pushed by Alastair Bridgewater
Clean up all use of the *-space-free-pointers.
* These are symbols whose value slots contain unboxed word-aligned
* Shift by n-fixnum-tag-bits instead of shifting by word-shift or