Skip to content
  • Simon Marlow's avatar
    [project @ 1999-11-09 15:46:49 by simonmar] · 30681e79
    Simon Marlow authored
    A slew of SMP-related changes.
    
     - New locking scheme for thunks: we now check whether the thunk
       being entered is in our private allocation area, and if so
       we don't lock it.  Well, that's the upshot.  In practice it's
       a lot more fiddly than that.
    
     - I/O blocking is handled a bit more sanely now (but still not
       properly, methinks)
    
     - deadlock detection is back
    
     - remove old pre-SMP scheduler code
    
     - revamp the timing code.  We actually get reasonable-looking
       timing info for SMP programs now.
    
     - fix a bug in the garbage collector to do with IND_OLDGENs appearing
       on the mutable list of the old generation.
    
     - move BDescr() function from rts/BlockAlloc.h to includes/Block.h.
    
     - move struct generation and struct step into includes/StgStorage.h (sigh)
    
     - add UPD_IND_NOLOCK for updating with an indirection where locking
       the black hole is not required.
    30681e79