[slightly OT] ghc-6.6.1 on OpenBSD/i386: internal error (Storage.c)

Simon Marlow simonmarhaskell at gmail.com
Tue May 29 11:15:29 EDT 2007


Matthias Kilian wrote:

> I'm currently working on updating the GHC port to 6.6.1 for OpenBSD,
> and when I run the testsuite (ghc-regress), all test cases for the
> way "threaded1", i.e. debug + threaded bail out with an assertion
> failure:
> 
> Blocks: 132 live + 123 free  = 255 total (508 around)
> conc010: internal error: ASSERTION FAILED: file Storage.c, line 1174
> 
> The numbers vary slightly, but there's always a total of 255 and
> 508 blocks around, except for one test case (con012), where there
> are a total of 763 blocks (1016 around).
> 
> What puzzles me a little bit is the fact that this does *not* happen
> on amd64 (aka x86_64) but only on i386 so far.
> 
> So does this ring a bell for anyone? I didn't find anything similar
> in the archives or in the bug tracker.

No ringing bells here I'm afraid.  What you're seeing is a failure from the code 
that checks for memory leaks, which is only enabled by -debug (the threaded1 
test way uses -threaded -debug).  It reckons you have 508 blocks allocated from 
the OS, but can only account for 255 of them.  You could try enabling some more 
debugging options, e.g. +RTS -DSb will enable sanity-checking and debugging 
messages from the block allocator.

Cheers,
	Simon


More information about the Glasgow-haskell-users mailing list