fix a deadlock in atomicModifyMutVar#
authorSimon Marlow <simonmar@microsoft.com>
Tue, 21 Feb 2006 16:37:11 +0000 (16:37 +0000)
committerSimon Marlow <simonmar@microsoft.com>
Tue, 21 Feb 2006 16:37:11 +0000 (16:37 +0000)
atomicModifyMutVar# was re-using the storage manager mutex (sm_mutex)
to get its atomicity guarantee in SMP mode. But recently the addition
of a call to dirty_MUT_VAR() to implement the read barrier lead to a
rare deadlock case, because dirty_MUT_VAR() very occasionally needs to
allocate a new block to chain on the mutable list, which requires
sm_mutex.


No differences found