On Thu, Sep 11, 2008 at 09:25:46AM +0100, Simon Marlow wrote:
> Simon Peyton-Jones wrote:
>
> >=====> bytestring001(optc)
> >Segmentation fault      
> 
> This is a segfault from GHC - perhaps you have old interface files in 
> your bytestring package?

Nope, it's reproducible:

$ ls bytestring001.*
bytestring001.hs  bytestring001.stdout
% /home/ian/ghc/darcs/full/ghc/stage2-inplace/ghc -fforce-recomp -o 
bytestring001 bytestring001.hs -O -fasm -package bytestring -package QuickCheck
/home/ian/ghc/darcs/full/ghc/stage2-inplace/ghc: line 2: 22336 Segmentation 
fault      /home/ian/ghc/darcs/full/ghc/stage2-inplace/libexec/ghc 
-B/home/ian/ghc/darcs/full/inplace-datadir/. -dynload wrapped ${1+"$@"}

That's with the threaded RTS. threaded-debug also segfaults.
debug-only gets an Illegal instruction.
"+RTS -DS" doesn't spot any problems.

Running the debug-only GHC in gdb, I get a segfault in
stg_sel_ret_0_upd_info.

Doing so again with "+RTS -DS" I got:

Program received signal SIGSEGV, Segmentation fault.
[Switching to Thread 139962880329440 (LWP 16207)]
0x000000000132a819 in LOOKS_LIKE_INFO_PTR_NOT_NULL (p=12297829382473034410)
    at ../includes/Storage.h:598
598         return info->type != INVALID_OBJECT && info->type < N_CLOSURE_TYPES;
(gdb) p info
$1 = (StgInfoTable *) 0xaaaaaaaaaaaaaa9a
(gdb) p &info
$2 = (StgInfoTable **) 0x7fffadd7abb8
(gdb) p4 0x7fffadd7abb0
0x7fffadd7abc8: 0x132a7e8 <LOOKS_LIKE_INFO_PTR+39>
0x7fffadd7abc0: 0x7fffadd7abe0
0x7fffadd7abb8: 0xaaaaaaaaaaaaaa9a
0x7fffadd7abb0: 0x7fffadd7ac00

so it looks like some unaligned writing has gone on at some point.

The above is all amd64/Linux.

I've filed it here:
http://hackage.haskell.org/trac/ghc/ticket/2586


Thanks
Ian

_______________________________________________
Cvs-ghc mailing list
[email protected]
http://www.haskell.org/mailman/listinfo/cvs-ghc

Reply via email to