X-Git-Url: http://repo.macrolet.net/gitweb/?a=blobdiff_plain;f=NEWS;h=cdc89efa7aee6aceed96dafb368d8e1b8e7fb824;hb=decddddf7e581fa1ebee846e5fddcd52229bb9a8;hp=c3511f3cb1e46144ff601f9016eeb9725faf98ea;hpb=2b0c46508938b606e70cd6f2bb51506d44e45262;p=sbcl.git diff --git a/NEWS b/NEWS index c3511f3..cdc89ef 100644 --- a/NEWS +++ b/NEWS @@ -1,14 +1,33 @@ ;;;; -*- coding: utf-8; fill-column: 78 -*- +changes in sbcl-1.0.28 relative to 1.0.27: + * bug fix: timers could go off in the wrong order, be delayed indefinitely + (thanks to Ole Arndt for the patch) + +changes in sbcl-1.0.27 relative to 1.0.26: + * new port: support added for x86-64 OpenBSD. (thanks to Josh Elsasser) + * new port: support added for x86-64 Solaris. (thanks to Alex Viskovatoff) + * improvement: the system either recovers from stack exhaustion or dies + properly as opposed to leaving the user uncertain of whether the handler + trampled on some random memory next to the stack or having to rely on + --lose-on-corruption (which is still a good idea to use in production + because stack exhaustion can happen in signal handlers which will likely + lead to hangs.) + * bug fix: fix gc related interrupt handling bug on ppc (regression from + 1.0.25.37, reported by Harald Hanche-Olsen) + * bug fix: work around signal delivery bug in darwin (regression from + 1.0.25.44, reported by Sidney Markowitz) + * bug fix: fix ERROR leaking memory (reported by David Thompson) + changes in sbcl-1.0.26 relative to 1.0.25: - * incompatible change: the interruption (be it a function passed to + * incompatible change: an interruption (be it a function passed to INTERRUPT-THREAD or a timer function) runs in an environment where interrupts can be enabled. The interruption can use WITH-INTERRUPTS or WITHOUT-INTERRUPTS as it sees fit. Use WITHOUT-INTERRUPTS to avoid nesting of interruptions and - potentially running out of stack. Keep in mind that in the absance + potentially running out of stack. Keep in mind that in the absence of WITHOUT-INTERRUPTS some potentially blocking operation such as acquiring a lock can enable interrupts. - * incompatible change: GC-OFF and GC-ON are removed, they were + * incompatible change: GC-OFF and GC-ON are removed, as they were always unsafe. Use WITHOUT-GCING instead. * new feature: runtime option --disable-ldb * new feature: runtime option --lose-on-corruption to die at the @@ -16,6 +35,8 @@ changes in sbcl-1.0.26 relative to 1.0.25: memory, stack, alien stack, binding stack, encountering a memory fault, etc. In the absence of --lose-on-corruption a warning is printed to stderr. + * enhancement: detect binding stack exhaustion + * enhancement: detect alien stack exhaustion on x86/x86-64 * improvement: generally more stable and reliable interrupt handling * improvement: there is a per thread interruption queue, interruptions are executed in order of arrival @@ -34,8 +55,12 @@ changes in sbcl-1.0.26 relative to 1.0.25: fault. * bug fix: finalizers, gc hooks never run in a WITHOUT-INTERRUPTS * bug fix: fix random memory faults related to interrupts on alpha + * bug fix: fix random memory faults related to interrupts on sparc * bug fix: fix deadlocks related to starting threads * bug fix: fix deadlines on locks on futex platforms + * bug fix: restore errno in signal handlers + * bug fix: fix deadlocks related to hash tables + * bug fix: fix deadlocks in pcl changes in sbcl-1.0.25 relative to 1.0.24: * incompatible change: SB-INTROSPECT:FUNCTION-ARGLIST is deprecated, to be