SegFault caused by some IO+Arrays+GC interaction

Simon Marlow simonmar at microsoft.com
Mon Jun 28 07:07:32 EDT 2004


On 27 June 2004 23:37, Tomasz Zielonka wrote:

> The attached program uses no unsafe operations and yet it segfaults
> from time to time. Try it on some file of moderate size, like:
> 
> $ ghc --version
> The Glorious Glasgow Haskell Compilation System, version 6.2.1
> $ ghc -O --make Bug -o Bug
> Chasing modules from: Bug
> Compiling Main             ( Bug.hs, Bug.o )
> Linking ...
> $ ls -l /etc/termcap
> -rw-r--r--    1 root     root       737535 lip 20  2001 /etc/termcap
> $ ./Bug < /etc/termcap > /dev/null
> Segmentation fault (core dumped)
> $ ./Bug < /etc/termcap > /dev/null
> $ ghc --version
> The Glorious Glasgow Haskell Compilation System, version 6.2.1
> $ gcc --version
> gcc (GCC) 3.3.3
> Copyright (C) 2003 Free Software Foundation, Inc.
> This is free software; see the source for copying conditions.  There
> is NO warranty; not even for MERCHANTABILITY or FITNESS FOR A
> PARTICULAR PURPOSE.
> 
> $ uname -a
> Linux green.local.gem.pl 2.4.18-10 #1 Wed Aug 7 10:26:48 EDT 2002 i686
> unknown

Thanks for a superb bug report.

This bug appears to be another incarnation of a bug that has been fixed
since 6.2.1.  I used the 6.2.1 compiler but linked the program against
the latest runtime on the 6.2 branch, which is identical except for this
single fix, and the crash went away.

So you can either wait for 6.2.2 (shouldn't be too long), use a nightly
snapshot of the 6.2 branch, or build from source.  Or if you have an
existing 6.2.1 build locally, I can put together a patch for this fix -
let me know.

Cheers,
	Simon



More information about the Glasgow-haskell-bugs mailing list