[GHC] #11317: Test prog003 fails with segfault on Windows (GHCi)
GHC
ghc-devs at haskell.org
Wed Dec 30 22:30:59 UTC 2015
#11317: Test prog003 fails with segfault on Windows (GHCi)
---------------------------------+----------------------------------------
Reporter: rdragon | Owner:
Type: bug | Status: new
Priority: normal | Milestone:
Component: GHCi | Version: 7.11
Resolution: | Keywords: GC
Operating System: Windows | Architecture: Unknown/Multiple
Type of failure: GHCi crash | Test Case: prog003
Blocked By: | Blocking:
Related Tickets: #11234 #3408 | Differential Rev(s):
Wiki Page: |
---------------------------------+----------------------------------------
Changes (by Phyx-):
* keywords: => GC
* testcase: => prog003
* architecture: x86_64 (amd64) => Unknown/Multiple
* related: #11234 => #11234 #3408
Comment:
This seems like it's related to #3408. The `GC` timeout `-I` is at fault.
The default timeout for Windows was changed to 5secs in
https://github.com/ghc/ghc/blob/master/ghc/hschooks.c#L42 to avoid issues
with the `GC` and `haskeline` on Windows.
Coincidentally I don't know why this was done there (which is rather
hidden) rather than in `RtsFlags.c`. The helptext for RTS opts is also
wrong (says the default is 0.3s for all platforms).
In any case, the test is setting a value so low that it's causing a
segfault.
On a normal run the GC ends with
{{{
Memory inventory:
gen 0 blocks : 16 blocks ( 0.1 MB)
gen 1 blocks : 5541 blocks ( 21.6 MB)
nursery : 5379 blocks ( 21.0 MB)
retainer : 0 blocks ( 0.0 MB)
arena blocks : 0 blocks ( 0.0 MB)
exec : 1 blocks ( 0.0 MB)
free : 1411 blocks ( 5.5 MB)
total : 12348 blocks ( 48.2 MB)
84f44: cap 0: all caps stopped for GC
84f44: cap 0: finished GC
84f44: exitHpc
84f44: cap 0: shutting down
}}}
but when it segfaults
{{{
Memory inventory:
gen 0 blocks : 51 blocks ( 0.2 MB)
gen 1 blocks : 5470 blocks ( 21.4 MB)
nursery : 5202 blocks ( 20.3 MB)
retainer : 0 blocks ( 0.0 MB)
arena blocks : 0 blocks ( 0.0 MB)
exec : 1 blocks ( 0.0 MB)
free : 3388 blocks ( 13.2 MB)
total : 14112 blocks ( 55.1 MB)
84cd4: cap 0: all caps stopped for GC
84cd4: cap 0: finished GC
}}}
So GC does finish, but something happens between then and `exitHpc`
--
Ticket URL: <http://ghc.haskell.org/trac/ghc/ticket/11317#comment:3>
GHC <http://www.haskell.org/ghc/>
The Glasgow Haskell Compiler
More information about the ghc-tickets
mailing list