Date: Tue, 22 Jan 2008 23:05:49 +0100 From: Marius Strobl <marius@alchemy.franken.de> To: Andrew Reilly <andrew@areilly.bpc-users.org> Cc: Joseph Koshy <jkoshy@freebsd.org>, freebsd-stable@freebsd.org, freebsd-ports@freebsd.org Subject: Re: 7-STABLE regression that breaks lang/drscheme is src/contrib/gcc/gthr-posix.h 1.1.1.8.2.1 Message-ID: <20080122220549.GA770@alchemy.franken.de> In-Reply-To: <20080122211014.336999b1@duncan.reilly.home> References: <20080122094405.230a0856@duncan.reilly.home> <20080122093327.GB38360@alchemy.franken.de> <20080122211014.336999b1@duncan.reilly.home>
next in thread | previous in thread | raw e-mail | index | archive | help
On Tue, Jan 22, 2008 at 09:10:14PM +1100, Andrew Reilly wrote: > Hi Marius, > > On Tue, 22 Jan 2008 10:33:27 +0100 > Marius Strobl <marius@alchemy.franken.de> wrote: > > > The __gthread_active_p(), which returns false positives prior > > to the current version of gthr-posix.h, isn't only used in > > libstdc++ but also in headers that are installed beneath > > /usr/include/c++. So the code in those headers compiled into > > an existing binary which was built prior to the gthr-posix.h > > fix still might erroneously determine that it's running in a > > threaded environment while f.e. libstdc++ does not, causing > > the problems you see. Did you try a mred built on a stock > > 7-STABLE? > > When it first stopped working (around the 11th, from memory), my > first approach was to rebuild it (over and over, and attempt to > debug it...) No joy that way. It's only since I reverted to > the earlier version of FreeBSD that it's started working again. > > As part of the attempt to make mred work again, I re-built > *all* of the ports that I have installed (some 900-odd), so > all of the libraries in /usr/local/lib are post-15 Jan., and > have whatever effect the change introduces. Perhaps that is > why epiphany has gone unstable on me (seems to be complaining > about failing to connect to gnomevfs). I suspect that mred > wasn't minding false-positives before, because it's been > configured/compiled with pthreads enabled (for the benefit of > Mesa/OpenGL, apparently). > Ok, in your previous mail you talked about an "exisiting binary" so I assumed you haden't tried with a recompiled one or a recompiled one didn't exhibit the problem. Anyway, you're right and I've overlooked that mred is threaded anyway so in this case it shouldn't matter if __gthread_active_p() prevously returned false-positives or not. The only way I currently can think of the new __gthread_active_p() causing problems would be if now it returned false-negatives. So far I can't reproduce such a problem nor see how that could happen though. It would help if you could debug where mred craches and what __gthread_active_p() returned in this case. Marius
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20080122220549.GA770>