Summary of GHC 6.6 test suite failures on MSYS/MinGW

Simon Marlow simonmarhaskell at gmail.com
Tue Sep 26 12:08:40 EDT 2006


Brian Smith wrote:
> On 9/25/06, *Ian Lynagh* <igloo at earth.li <mailto:igloo at earth.li>> wrote:
> 
>     On Wed, Sep 13, 2006 at 12:23:27PM -0500, Brian Smith wrote:
> 
>      > * conc023(ghci)
>      >
>      > This test only fails when run via GHCi. This test runs out of
>     memory. The
>      > error message to stderr is:
>      >    conc023: failed to create OS thread: Not enough storage is
>     available to
>      > process this command.
>      >
>      > When I came back to the computer I saw that Windows was warning
>     me that I
>      > was out of virtual memory and that it was increasing my page file
>     size. I
>      > have 1GB of RAM which I think should be sufficient to run the
>     testsuite
>      > successfully.
> 
>     Does that happen repeatably?
> 
> 
> The test always failed. When I decreased the number of threads in the 
> test from 5,000 to 1,400 or so, then the tests passed sometimes, and 
> sometimes failed. Decreasing the number of threads to under a thousand 
> made the test pass consistently. IIRC, the test failed almost 
> immediately upon executing.

conc023 creates 5000 threads that all do threadDelay with varying delays.  On 
Windows, with both the threaded and non-threaded runtimes, this results in 5000 
OS threads being created, which is usually enough to fill up your VM.

I intend to fix this, at least in the threaded RTS, in fact it'll be part of the 
fix for http://hackage.haskell.org/trac/ghc/ticket/637.  The I/O manager thread 
handles sleeps and signals, but currently isn't implemented on Windows.

> Now, when I tried to rerun the tests against the latest ghc-6.6, ghc.exe 
> is segfaulting on ffi012(ghci), conc049(ghci), and conc023(ghci):
>
> Unhandled exception at 0x0207fc58 in ghc.exe: 0xC0000005: Access violation.

That's a bit worrying...

Cheers,
	Simon



More information about the Glasgow-haskell-bugs mailing list