diff options
author | Simon Marlow <marlowsd@gmail.com> | 2008-10-09 08:51:18 +0000 |
---|---|---|
committer | Simon Marlow <marlowsd@gmail.com> | 2008-10-09 08:51:18 +0000 |
commit | 736d37f0c515316d1cba759301d92d7503895ea5 (patch) | |
tree | 5f8babba1973bd279c618cd38f1fe56151a58c48 /rts/RaiseAsync.c | |
parent | ce76b92f22b677fd6d978751be811d34fa141c84 (diff) | |
download | haskell-736d37f0c515316d1cba759301d92d7503895ea5.tar.gz |
undo incorrect assertion, and fix comments
Diffstat (limited to 'rts/RaiseAsync.c')
-rw-r--r-- | rts/RaiseAsync.c | 11 |
1 files changed, 2 insertions, 9 deletions
diff --git a/rts/RaiseAsync.c b/rts/RaiseAsync.c index 74e9dba635..b23c6c7a48 100644 --- a/rts/RaiseAsync.c +++ b/rts/RaiseAsync.c @@ -576,12 +576,8 @@ performBlockedException (Capability *cap, StgTSO *source, StgTSO *target) This is for use when we raise an exception in another thread, which may be blocked. - Precondition: we have exclusive access to the TSO, which entails - holding a lock on the object that owns the queue, if the TSO is - blocked. e.g. if the thread is blocked on an MVar, we must hold a - lock on the MVar before calling removeFromQueues(). - - This has nothing to do with the UnblockThread event in GranSim. -- HWL + Precondition: we have exclusive access to the TSO, via the same set + of conditions as throwToSingleThreaded() (c.f.). -------------------------------------------------------------------------- */ static void @@ -606,9 +602,6 @@ removeFromQueues(Capability *cap, StgTSO *tso) goto done; case BlockedOnBlackHole: - // we have exclusive access to this TSO, which implies that we - // must hold sched_mutex: - ASSERT_LOCK_HELD(&sched_mutex); removeThreadFromQueue(cap, &blackhole_queue, tso); goto done; |