[GHC] #10860: setnumcapabilities001: internal error: ASSERTION FAILED: file rts/Schedule.c, line 400
GHC
ghc-devs at haskell.org
Fri Aug 5 09:13:45 UTC 2016
#10860: setnumcapabilities001: internal error: ASSERTION FAILED: file
rts/Schedule.c, line 400
-------------------------------------+-------------------------------------
Reporter: thomie | Owner: simonmar
Type: bug | Status: closed
Priority: high | Milestone: 8.2.1
Component: Runtime System | Version: 7.10.2
Resolution: fixed | Keywords:
Operating System: Unknown/Multiple | Architecture:
| Unknown/Multiple
Type of failure: None/Unknown | Test Case:
Blocked By: | Blocking:
Related Tickets: | Differential Rev(s):
Wiki Page: |
-------------------------------------+-------------------------------------
Comment (by Simon Marlow <marlowsd@…>):
In [changeset:"ce13a9a9f57d61170837532948fed8bc1924a7ab/ghc"
ce13a9a9/ghc]:
{{{
#!CommitTicketReference repository="ghc"
revision="ce13a9a9f57d61170837532948fed8bc1924a7ab"
Fix an assertion that could randomly fail
Summary:
ASSERT_THREADED_CAPABILITY_INVARIANTS was testing properties of the
returning_tasks queue, but that requires cap->lock to access safely.
This assertion would randomly fail if stressed enough.
Instead I've removed it from the catch-all
ASSERT_PARTIAL_CAPABILITIY_INVARIANTS and made it a separate assertion
only called under cap->lock.
Test Plan:
```
cd testsuite/tests/concurrent/should_run
make TEST=setnumcapabilities001 WAY=threaded1 EXTRA_HC_OPTS=-with-
rtsopts=-DS CLEANUP=0
while true; do ./setnumcapabilities001.run/setnumcapabilities001 4 9 2000
|| break; done
```
Reviewers: niteria, bgamari, ezyang, austin, erikd
Subscribers: thomie
Differential Revision: https://phabricator.haskell.org/D2440
GHC Trac Issues: #10860
}}}
--
Ticket URL: <http://ghc.haskell.org/trac/ghc/ticket/10860#comment:8>
GHC <http://www.haskell.org/ghc/>
The Glasgow Haskell Compiler
More information about the ghc-tickets
mailing list