[Gc] Re: gcc 3.4 gc-test program boehm-gc/tests/test.c fails on linux 2.6.7

Hans Boehm Hans.Boehm at hp.com
Mon Aug 16 21:38:27 PDT 2004


I had missed the other bug report.

Did you try after Bryce finished the 6.3 merge?  If that still fails, I'd
like to track down the problem.  I did some testing on a 2.6 Itanium
machine, but my X86 testing probably used older kernels.

If you were planning on having this patch checked into the 3.4.2 tree
we should post it on java-patches.  It may be better to backport a
real patch, once we're sure we have the correct one.  I think either one
is fine for 99.5% of applications, but there may be someone out there
trying to use the incremental collector by turning it on in native code.

Hans

On Mon, 16 Aug 2004, John Lumby wrote:

> Thank-you Hans.    I made that change and also made the following two
> changes to the compiler itself to be consistent:
> . in gcc-3.4.1/boehm-gc/misc.c
>        ifdef-out entire function GC_enable_incremental
> . in gcc-3.4.1/boehm-gc/pcr_interface.c
>       change call to GC_enable_incremental() into an ABORT
> This is on the assumption that the gcc never uses this function as you
> indicated.
>
> With those changes, build ok and make check ok.
>
> Perhaps you could kindly confirm that these changes are ok for gcc and I can
> then install it.
>
> By the way, just for interest I tried building and make check'ing the gcc
> tree from cvs and it also fails in the boehm-gc test, so the changes you
> mentioned that you recently made
> (pthread_stop_world.c)  are apparently not enough.  I also see gcc-Bugzilla
> Bug 15812 open.  (I personally am not intending to instal gcc 3.5 until it
> becomes stable release)
>
> John
>
> ----Original Message Follows----
> From: Hans Boehm <Hans.Boehm at hp.com>
> To: John Lumby <johnlumby at hotmail.com>
> CC: gc at napali.hpl.hp.com, Hans.Boehm at hp.com
> Su  bject: RE: [Gc] Re: The gcc 3.4 gc-test program boehm-gc/tests/test.c
> failson linux 2.
> Date: Sun, 15 Aug 2004 21:54:37 -0700 (PDT)
>
> The easiest patch may be to remove the GC_enable_incremental call around
> line 1809 in tests/test.c, or change the surrounding #if to a #if 0.
>
> (I'm not sure about the line number in your version, but it's the last
> such call in the file.)
>
> The other workaround is probably to build with --enable-parallel-mark,
> which is probably a good idea if you are targetting mostly
> multiprocessors.
>
> Hans
>
> On Sun, 15 Aug 2004, John Lumby wrote:
>
>  > Thank you Hans.     I extracted latest pthread_stop_world.c from the gcc
> cvs
>  > ( can't tell if this is the same version 6.3alpha6 you stated or newer)
> and
>  > tried
>  > cd /home/gcc-build/i686-pc-linux-gnu/boehm-gc;make
>  > but when compiling the new pthread_stop_world.c :
>  > ___________________________________________________
>  > /home/gcc-3.4.1/boehm-gc/pthread_stop_world.c: In function
>  > `GC_push_all_stacks':
>  > /home/gcc-3.4.1/boehm-gc/pthread_stop_world.c:269: error:
>  > `GC_in_thread_creation' undeclared (first use in this function)
>  > /home/gcc-3.4.1/boehm-gc/pthread_stop_world.c:269: error: (Each
> undeclared
>  > identifier is reported only once
>  > /home/gcc-3.4.1/boehm-gc/pthread_stop_world.c:269: error: for each
> function
>  > it appears in.)
>  > make[1]: *** [pthread_stop_world.lo] Error 1
>  > _____________________________________________
>  >
>  > I guess maybe I also need a newer header file?    Where should
>  > GC_in_thread_creation be defined?
>  >
>  > But of course replacing this file is changing the gcc itself, not just a
>  > change to the test suite.   Maybe I can't (or shouldn't) do this in
> version
>  > 3.4.1 ?       But I wonder if there is some simple change to my 3.4.1
> tree
>  > that will let the test run correctly?      E,g, would you recommend to
>  > replace the entire boehm_gc dir by the one from cvs and try that?   Is it
>  > completely self-contained and not dependent on version of other gcc
>  > directories?
>  >
>  > I understand you said this incremental mode is not used in the gcc itself
> -
>  > so maybe I should ignore the error and install.     but  I don't like to
>  > "instal" a new gcc that doesn't pass its own tests.
>  >
>  > John
>  >
>  > ----Original Message Follows----
>  > From: Hans Boehm <Hans.Boehm at hp.com>
>  > To: John Lumby <johnlumby at hotmail.com>
>  > CC: gc at napali.hpl.hp.com
>  > Subject: [Gc] Re: The gcc 3.4 gc-test program boehm-gc/tests/test.c fails
> on
>  > linux 2.6.7 on ix86
>  > Date: Sat, 14 Aug 2004 18:29:41 -0700 (PDT)
>  >
>  > I believe this was fixed by a change to signal masking in
>  > pthread_stop_world.c in version 6.3alpha6.  As a result, it should
>  > now be fixed in the gcc trunk.  I should have merged this into the
>  > gcc tree earlier.
>  >
>  > I don't think this actually affects normal gcj operation, since it
>  > should only show up in incremental GC mode, which is not enabled for gcj.
>  >
>  > Hans
>
> _________________________________________________________________
> Express yourself instantly with MSN Messenger! Download today - it's FREE!
> http://messenger.msn.click-url.com/go/onm00200471ave/direct/01/
>
> _______________________________________________
> Gc mailing list
> Gc at linux.hpl.hp.com
> http://www.hpl.hp.com/hosted/linux/mail-archives/gc/
>


More information about the Gc mailing list