projects
/
ghc-hetmet.git
/ commitdiff
commit
grep
author
committer
pickaxe
?
search:
re
summary
|
shortlog
|
log
|
commit
| commitdiff |
tree
raw
|
patch
| inline |
side by side
(parent:
4760739
)
don't yield the Capability if blackholes_need_checking
author
Simon Marlow
<marlowsd@gmail.com>
Wed, 5 Nov 2008 15:49:28 +0000
(15:49 +0000)
committer
Simon Marlow
<marlowsd@gmail.com>
Wed, 5 Nov 2008 15:49:28 +0000
(15:49 +0000)
rts/Schedule.c
patch
|
blob
|
history
diff --git
a/rts/Schedule.c
b/rts/Schedule.c
index
569c3d0
..
ca6e426
100644
(file)
--- a/
rts/Schedule.c
+++ b/
rts/Schedule.c
@@
-714,7
+714,8
@@
scheduleYield (Capability **pcap, Task *task)
Capability *cap = *pcap;
// if we have work, and we don't need to give up the Capability, continue.
- if (!emptyRunQueue(cap) && !shouldYieldCapability(cap,task))
+ if (!shouldYieldCapability(cap,task) &&
+ (!emptyRunQueue(cap) || blackholes_need_checking))
return;
// otherwise yield (sleep), and keep yielding if necessary.