0.9.5.58:
authorGabor Melis <mega@hotpop.com>
Fri, 14 Oct 2005 14:11:29 +0000 (14:11 +0000)
committerGabor Melis <mega@hotpop.com>
Fri, 14 Oct 2005 14:11:29 +0000 (14:11 +0000)
commitb44ca02cb963446ef23fec989786462ce88bca84
tree7dee4cd42f32454e09ce91372d80e2149e77a18a
parentce61d8a961590a1a03efc96d6d525670c4a8c035
0.9.5.58:
  * nasty interrupt bug:
    1) sigalrm handler is deferred
    2) later it's run via sigtrap handler
    3) handler does pa_alloc while sigtrap is blocked
    4) gc is needed and another sigtrap is triggered by 3)
    5) stupid Linux kernel sees that sigtrap is blocked and invokes the
       default handler (see http://groups.google.com/group/fa.linux.kernel/browse_frm/thread/455401a6837c72bf/865ea792a236299c)
    6) coredump
    Adding SA_NODEFER to sigaction is enough for sane systems to fix this.
    Not for buggy Linux 2.6. A compile time test was added for
    sigaction and SA_NODEFER allowing the runtime to work around this
    bug (see interrupt.c).
  * added missing sigemptysets
src/runtime/interrupt.c
tools-for-build/Makefile
tools-for-build/grovel-features.sh
tools-for-build/sigaction-sa-nodefer-works-test.c [new file with mode: 0644]
version.lisp-expr