
#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