Anyone else failing to validate on 'linker_unload'?

Ryan Newton rrnewton at gmail.com
Mon Sep 2 04:54:34 CEST 2013


Hi Austin,

Should have said -- this is 64-bit RHEL 6 (my academic departments
standardized configuration).

 $ uname -a
     Linux  2.6.32-358.14.1.el6.x86_64 #1 SMP Mon Jun 17 15:54:20 EDT 2013
x86_64 x86_64 x86_64 GNU/Linux

Weirdly it seems to have a different behavior when run by "make" and by
hand.  When I run the make command you provided it segfaults with error
code 2:

*cd . && $MAKE -s --no-print-directory linker_unload    </dev/null
>linker_unload.run.stdout 2>linker_unload.run.stderr*
*Wrong exit code (expected 0 , actual 2 )*
*Stdout:*
*Stderr:*
*make[1]: *** [linker_unload] Segmentation fault (core dumped)*
**** unexpected failure for linker_unload(normal)*
*Unexpected results from:*
*TEST="linker_unload"*

But then when I run it by hand with "./linker_unload" or "valgrind
./linker_unload" I get an unknown symbol error with exit code 1:

*==70613==*
*linker_unload: Test.o: unknown symbol `base_GHCziNum_zdfNumInt_closure'*
*linker_unload: resolveObjs failed*
*==70613==*
*==70613== HEAP SUMMARY:*


   -Ryan


On Sun, Sep 1, 2013 at 10:46 PM, Austin Seipp <aseipp at pobox.com> wrote:

> I have also not seen this test fail on amd64/Linux since Simon
> committed it. From the valgrind output, it looks like your machine is
> 32bit, correct Ryan? Edward told me yesterday on IRC he saw this fail
> on 64bit Linux, so I'm a little confused.
>
> Can you please try this?
>
> $ cd testsuite/tests/rts
> $ make TEST="linker_unload" EXTRA_HC_OPTS="-debug"
> $ valgrind ./linker_unload
>
> This will link you with a debug copy of the RTS, so Valgrind/GDB can
> relate errors back to the relevant source code. Perhaps this will help
> shed light on your problem.
>
>
> On Sun, Sep 1, 2013 at 9:39 PM, Edward Z. Yang <ezyang at mit.edu> wrote:
> > However, as far as I can tell, it is not 100% reproduceable.
> > In a recent validate of 5f98d44d8617756971cf47c040f2556de4e98f63,
> > this test does not fail.
> >
> > Edward
> >
> > Excerpts from Edward Z. Yang's message of Fri Aug 30 21:55:29 -0700 2013:
> >> Yes, this one is failing for me too. Probably related to the
> >> recent object unload patch for
> http://ghc.haskell.org/trac/ghc/ticket/8039
> >>
> >> Excerpts from Ryan Newton's message of Fri Aug 30 21:51:24 -0700 2013:
> >> > That test builds an executable named 'linker_unload' which segfaults
> for
> >> > me.  Valgrind says this:
> >> >
> >> >
> >> >     ==42800== Invalid read of size 8
> >> >     ==42800==    at 0x66945F: checkUnload (in
> >> >
> /home/beehive/ryan_scratch/validate14/testsuite/tests/rts/linker_unload)
> >> >     ==42800==    by 0x657F7A: GarbageCollect (in
> >> >
> /home/beehive/ryan_scratch/validate14/testsuite/tests/rts/linker_unload)
> >> >     ==42800==    by 0x651790: scheduleDoGC (in
> >> >
> /home/beehive/ryan_scratch/validate14/testsuite/tests/rts/linker_unload)
> >> >     ==42800==    by 0x6518B4: performGC_ (in
> >> >
> /home/beehive/ryan_scratch/validate14/testsuite/tests/rts/linker_unload)
> >> >     ==42800==    by 0x403BB1: main (in
> >> >
> /home/beehive/ryan_scratch/validate14/testsuite/tests/rts/linker_unload)
> >> >     ==42800==  Address 0x5bfdd20 is 80 bytes inside a block of size
> 120
> >> > free'd
> >> >     ==42800==    at 0x4C273F0: free (vg_replace_malloc.c:446)
> >> >     ==42800==    by 0x66945E: checkUnload (in
> >> >
> /home/beehive/ryan_scratch/validate14/testsuite/tests/rts/linker_unload)
> >> >     ==42800==    by 0x657F7A: GarbageCollect (in
> >> >
> /home/beehive/ryan_scratch/validate14/testsuite/tests/rts/linker_unload)
> >> >     ==42800==    by 0x651790: scheduleDoGC (in
> >> >
> /home/beehive/ryan_scratch/validate14/testsuite/tests/rts/linker_unload)
> >> >     ==42800==    by 0x6518B4: performGC_ (in
> >> >
> /home/beehive/ryan_scratch/validate14/testsuite/tests/rts/linker_unload)
> >> >     ==42800==    by 0x403BB1: main (in
> >> >
> /home/beehive/ryan_scratch/validate14/testsuite/tests/rts/linker_unload)
> >> >
> >> > This went the same across a couple different independent checkouts.
> >> >
> >> >   -Ryan
> >
> > _______________________________________________
> > ghc-devs mailing list
> > ghc-devs at haskell.org
> > http://www.haskell.org/mailman/listinfo/ghc-devs
>
>
>
> --
> Regards,
> Austin - PGP: 4096R/0x91384671
>
> _______________________________________________
> ghc-devs mailing list
> ghc-devs at haskell.org
> http://www.haskell.org/mailman/listinfo/ghc-devs
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://www.haskell.org/pipermail/ghc-devs/attachments/20130901/3356fd6a/attachment.htm>


More information about the ghc-devs mailing list