summaryrefslogtreecommitdiff
path: root/libraries
diff options
context:
space:
mode:
authorÖmer Sinan Ağacan <omeragacan@gmail.com>2018-10-15 13:53:21 -0400
committerBen Gamari <ben@smart-cactus.org>2018-10-15 19:24:17 -0400
commit45ed4619fd5cfe785bbf1142b9d16e4f3c5148ce (patch)
treea127226850802a0aad71d2e4d3690e5e4502d57c /libraries
parent8306141397d6e47a169dbe4b7ff1b3319a502aa7 (diff)
downloadhaskell-45ed4619fd5cfe785bbf1142b9d16e4f3c5148ce.tar.gz
Fix BLACKHOLE inspection in RtClosureInspect
When inspecing a BLACKHOLE if the BLACKHOLE points to a TSO or a BLOCKING_QUEUE we should return a suspension to the BLACKHOLE itself (instead of returning a suspension to the indirectee). The reason is because in the debugger when we want to evaluate this term we need to enter the BLACKHOLE and not to the TSO or BLOCKING_QUEUE. See the runtime panic caused by this in #8316. Note that while with this patch we do the right thing to evaluate thunks in GHCi, evaluating thunks that are owned by the evaluator thread in a breakpoint will cause a deadlock as we don't release the breakMVar, which is what blocks the evaluator thread from continuing with evaluation. So the GHCi thread will enter the BLACKHOLE, but owner of the BLACKHOLE is also blocked. Reviewers: simonmar, hvr, bgamari Reviewed By: bgamari Subscribers: rwbarton, carter GHC Trac Issues: #8316 Differential Revision: https://phabricator.haskell.org/D5179
Diffstat (limited to 'libraries')
0 files changed, 0 insertions, 0 deletions