#3107: Over-eager GC when blocked on a signal in the non-threaded runtime
-------------------+--------------------------------------------------------
Reporter:  awick   |          Owner:                  
    Type:  bug     |         Status:  new             
Priority:  normal  |      Component:  Runtime System  
 Version:  6.10.1  |       Severity:  normal          
Keywords:          |       Testcase:                  
      Os:  Linux   |   Architecture:  Unknown/Multiple
-------------------+--------------------------------------------------------
 Right now, in the non-threaded runtime, if you have the situation where
 all the threads are blocked on MVars, the deadlock detection / avoidance
 code runs a GC. This is fine, generally, but if they're blocked on MVars
 held by signal handlers, it has a profoundly bad effect on performance. In
 short, the runtime starts collection (blocking signals?), and we're stuck
 waiting for it to finish before handling signals. Or, if the signal
 doesn't come in, we sit waiting in a loop, garbage collecting.

 It would be nice if the runtime either didn't trigger collection if signal
 handlers are in place, or, at the very least, held off on doing so for a
 nontrivial period of time.

-- 
Ticket URL: <http://hackage.haskell.org/trac/ghc/ticket/3107>
GHC <http://www.haskell.org/ghc/>
The Glasgow Haskell Compiler
_______________________________________________
Glasgow-haskell-bugs mailing list
[email protected]
http://www.haskell.org/mailman/listinfo/glasgow-haskell-bugs

Reply via email to