[Top][All Lists]

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Latest guile 1.9 segfault in GC

From: Cedric Cellier
Subject: Re: Latest guile 1.9 segfault in GC
Date: Tue, 17 Aug 2010 16:08:58 +0200
User-agent: Mutt/1.5.20 (2009-06-14)

Ok, this bug was fixed but not the actual bug I was after.

But finaly, thanks to libgc's debug message, I got it.
Actually, libgc overwrite pthread_create (and pthread_sigmask,
and a few more) to know when a new thread is started.
But this overloading is done "softly", ie. by a define in a
C header file.

The program I'm working on was composed of many compilation unit,
of which only a few include libguile (which then include gc.h).
Some of these compilation unit were calling pthread_create without
including libguile, and then when these threads were garbage
collecting libgc crashed.

So, in conclusion : always include libguile.h in the compilation
units calling pthread functions.

I would have prefered another solution, but I think we can live with
that, _if_ it's documented somewhere.

As a side note, I find libguile 1.9 slower than libguile 1.8.7.
I suppose, being an unstable version, it's compiled by default
with many debug options on. Is there an easy way to configure it
for fast execution, for benchmarking reason ?

reply via email to

[Prev in Thread] Current Thread [Next in Thread]