rts: Ignore signal before deleting timer. Fixes #7303.
authorErik de Castro Lopo <erikd@mega-nerd.com>
Sat, 6 Oct 2012 07:23:01 +0000 (17:23 +1000)
committerIan Lynagh <ian@well-typed.com>
Thu, 29 Nov 2012 13:39:01 +0000 (13:39 +0000)
commit162b87dfc610efa54ce3276e9a1e90b9dcb141a7
tree935e0179dd448cfc5fbc7432d0d6c1b04171699b
parentda26f6c38c22158f698ec75d910ebe4a61923d25
rts: Ignore signal before deleting timer. Fixes #7303.

Was getting an ocassional hang or segfault when building GHC in a
Qemu user space emulation of ARM. Turned out that the ITIMER_SIGNAL
was being delivered *after* the call to timer_delete(). Setting the
signal to SIG_IGN before deleting the timer solves the problem.
rts/posix/Itimer.c