Wed May 24 05:28:39 PDT 2006  Simon Marlow <[EMAIL PROTECTED]>
  * Better control of the IO manager thread; improvements to deadlock checking
      
  In the threaded RTS on *nix platforms:
      
   - we now start the IO manager thread eagerly at startup time
     (previously was started on demand).
  
   - we now ask the IO manager thread to stop at shutdown
      
   - In Timer.c:handle_tick, if it looks like we might be in a
     deadlock, instead of calling prodOneCapability() which was known to be
     wrong, we now send a byte down the IO manager's pipe to wake it up.
    
  This also avoids a case of double-acquisition of a mutex, which
  happened if prodOneCapability() was called while the current thread
  was holding a mutex.

    M ./rts/Prelude.h +4
    M ./rts/RtsStartup.c +8
    M ./rts/Timer.c +8
    M ./rts/package.conf.in +8
    M ./rts/posix/Signals.c +38
    M ./rts/posix/Signals.h -1 +5
_______________________________________________
Cvs-ghc mailing list
[EMAIL PROTECTED]
http://www.haskell.org/mailman/listinfo/cvs-ghc

Reply via email to