patch applied (ghc-6.10/ghc): Close the races between throwTo and
thread completion
Ian Lynagh
igloo at earth.li
Sun Jan 11 10:30:55 EST 2009
Wed Jan 7 06:05:07 PST 2009 Simon Marlow <marlowsd at gmail.com>
* Close the races between throwTo and thread completion
Any threads we missed were being caught by the GC (possibly the idle
GC if the system was otherwise inactive), but that's not ideal. The
fix (from Bertram Felgenhauer) is to use lockTSO to synchronise,
imposing an unconditional lockTSO on thread exit. I couldn't measure
any performance overhead from doing this, so it seems reasonable.
M ./rts/RaiseAsync.c -6 +13
M ./rts/Schedule.c -5 +7
View patch online:
http://darcs.haskell.org/ghc-6.10/ghc/_darcs/patches/20090107140507-12142-9083ca672e8bb6f59d85a92e2eca3a90c0a14ee2.gz
More information about the Cvs-ghc
mailing list