Hunting down the ghci failures in head on openbsd:
dons:
> Build description = HEAD on OpenBSD/x86
>
> Unexpected failures:
> drvrun002(ghci)
> drvrun003(ghci)
> drvrun004(ghci)
> drvrun005(ghci)
> drvrun006(ghci)
> drvrun010(ghci)
> drvrun012(ghci)
> drvrun014(ghci)
> drvrun015(ghci)
All these ghci failures get triggered when -no-recomp is on. With -no-recomp,
we segfault (!) at runtime, sometimes after getting a bit of the output done.
manzano$ '/home/dons/head-gcc3/i386-unknown-openbsd/ghc/compiler/
stage2/ghc-inplace' -dcore-lint -Di386_unknown_openbsd drvrun002.hs
--interactive -v0 -no-recomp <drvrun002.genscript
===== program output begins here
===== program output begins here
Options {s = SpecialOptions {test = 42}}
zsh: segmentation fault (core dumped)
'/home/dons/head-gcc3/i386-unknown-openbsd/ghc/compiler/stage2/ghc-inplace'
Turning off -no-recomp, it all runs fine:
manzano$ '/home/dons/head-gcc3/i386-unknown-openbsd/ghc/compiler/
stage2/ghc-inplace' -dcore-lint -Di386_unknown_openbsd drvrun002.hs
--interactive -v0 <drvrun002.genscript
===== program output begins here
===== program output begins here
Options {s = SpecialOptions {test = 42}}
Options {s = SpecialOptions {test = 42}}
Ok, so somehow recompilation checking is leading helping an rts crash.
Cranking up gdb:
manzano$ gdb -c ghc-6.5.core
/home/dons/head-gcc3/i386-unknown-openbsd/ghc/compiler/stage2/ghc-6.5
GNU gdb 6.1
...
Core was generated by `ghc-6.5'.
Program terminated with signal 11, Segmentation fault.
...
#0 0x1c9dd456 in stg_ap_0_info ()
Hmm. Same issue for drvrun002..drvrun015.
> arr015(ghci)
Looks like this test tiggers it too. Runs fine without -no-recomp.
manzano$ '/home/dons/head-gcc3/i386-unknown-openbsd/ghc/compiler/
stage2/ghc-inplace' -dcore-lint -Di386_unknown_openbsd arr015.hs
--interactive -v0 -no-recomp < arr015.genscript
check_tc DataziTuple.Z2T{(w) tc 46}
===== program output begins here
===== program output begins here
zsh: segmentation fault (core dumped)
'/home/dons/head-gcc3/i386-unknown-openbsd/ghc/compiler/stage2/ghc-inplace'
#0 0x1c9dd456 in stg_ap_0_info ()
> TH_reifyType2(normal)
> TH_genEx(normal)
Failing on linux too, unrelated.
> arrowrun001(ghci)
-no-recomp again.
> fed001(ghci)
Without -no-recomp:
manzano$ '/home/dons/head-gcc3/i386-unknown-openbsd/ghc/compiler/
stage2/ghc-inplace' -dcore-lint -Di386_unknown_openbsd fed001.hs
--interactive -v0 -fglasgow-exts <fed001.genscript
===== program output begins here
===== program output begins here
fed001: fed001.o: unknown symbol `Main_d1XH'
fed001: internal error: ASSERTION FAILED: file Linker.c, line 1281
Please report this as a bug to [email protected],
or http://www.sourceforge.net/projects/ghc/
With -no-recomp:
manzano$ '/home/dons/head-gcc3/i386-unknown-openbsd/ghc/compiler/
stage2/ghc-inplace' -dcore-lint -Di386_unknown_openbsd fed001.hs
--interactive -v0 -fglasgow-exts -no-recomp <fed001.genscript
fed001.hs:8:0: Warning: foreign declaration uses deprecated non-standard
syntax
fed001.hs:12:0: Warning: foreign declaration uses deprecated non-standard
syntax
===== program output begins here
===== program output begins here
zsh: segmentation fault (core dumped)
'/home/dons/head-gcc3/i386-unknown-openbsd/ghc/compiler/stage2/ghc-inplace'
gdb says:
#0 0x1c9e73fb in interpretBCO (cap=0x3c139cc0) at Interpreter.c:1196
1196 marshall_fn ( (void*)(cap->r.rCurrentTSO->sp +
ret_dyn_size) );
(gdb) where
#0 0x1c9e73fb in interpretBCO (cap=0x3c139cc0) at Interpreter.c:1196
#1 0x1c9d80ca in schedule (mainThread=0x3c13a0a0,
initialCapability=0x3c139cc0) at Schedule.c:696
#2 0x1c9d8eec in waitThread_ (m=0x3c13a0a0, initialCapability=0x3c139cc0)
at Schedule.c:2720
#3 0x1c9d8e03 in scheduleWaitThread (tso=0x517e000, ret=0x0,
initialCapability=0x3c139cc0)
at Schedule.c:2606
#4 0x1c9d4828 in rts_evalLazyIO (p=0x3c0d6408, ret=0x0) at RtsAPI.c:459
#5 0x1c9d3499 in main (argc=9, argv=0xcfbf1a2c) at Main.c:110
Ah! Now we have something that sounds sensible.
> ffi003(ghci)
-no-recomp again. Sames gdb result as for fed001.
> ffi004(ghci)
> ffi006(ghci)
> ffi007(ghci)
> ffi008(ghci)
> ffi009(ghci)
> ffi010(ghci)
> ffi011(ghci)
> ffi012(ghci)
> ffi013(ghci)
All as for fed001.
> cg015(ghci)
> cg035(ghci)
-no-recomp again. Same gdb as for fed001.
> cg055(ghci)
> cg056(ghci)
-no-recomp As for drvrun tests.
> conc038(threaded)
Seems like some other issue.
newThread started
- mainThread
- Haskell: 2
newThread back again
1 sec later
shutting down
--- 1,6 ----
newThread started
newThread back again
+ mainThread
1 sec later
shutting down
> conc039(threaded)
Some other issue again:
$ ./conc039
conc039: performGC_: interrupted
> conc049(ghci)
-no-recomp, same as fed001.
Also on linux.
> genUpTo(ghci)
-no-recomp, as for drvrun*.
> simpl008(normal)
> xmlish(ghci)
> hlist(ghci)
> hopat(ghci)
> perm(ghci)
> ioref001(ghci)
> text001(ghci)
> tup001(ghci)
> stableptr001(ghci)
> joao-circular(prof)
> joao-circular(profasm)
> joao-circular(ghci)
> andy_cherry(ghci)
> galois_raytrace(ghci)
> seward-space-leak(ghci)
> ghci008(ghci)
> ghci011(ghci)
> ghci012(ghci)
> ghci001(ghci)
Didn't look at these.
_______________________________________________
Cvs-ghc mailing list
[EMAIL PROTECTED]
http://www.haskell.org/mailman/listinfo/cvs-ghc