Skip site navigation (1)Skip section navigation (2)
Date:      Fri, 12 Sep 2008 09:26:37 -0400
From:      "Barry Andrews" <titanandrews@gmail.com>
To:        "Jeremy Chadwick" <koitsu@freebsd.org>
Cc:        Daniel Eischen <deischen@freebsd.org>, freebsd-hackers@freebsd.org
Subject:   Re: loading multi threaded library into executable enabled for single thread
Message-ID:  <eda4c18b0809120626u48fbe5e2pdf7147d71d1f8def@mail.gmail.com>
In-Reply-To: <20080912131045.GA56923@icarus.home.lan>
References:  <eda4c18b0809111206t6438f87dmb8fab0db939c9980@mail.gmail.com> <Pine.GSO.4.64.0809111620340.13959@sea.ntplx.net> <48CA555A.4050104@gmail.com> <20080912131045.GA56923@icarus.home.lan>

next in thread | previous in thread | raw e-mail | index | archive | help
I don't understand. If it was not broken, then why did it change in later
FreeBSD versions?

On Fri, Sep 12, 2008 at 9:10 AM, Jeremy Chadwick <koitsu@freebsd.org> wrote:

> On Fri, Sep 12, 2008 at 07:41:14AM -0400, Barry Andrews wrote:
> > Do you know if this is documented in Release Notes or Known Issues or
> > somewhere?
>
> Why would it be an "issue"?  gcc -pthread and libpthread linking is
> documented pretty much everywhere on the web.  There isn't anything
> broken about it, it's how it's done on older FreeBSD.
>
> Note that all of this has significantly changed in later FreeBSD
> versions, and that the 5.x series was deprecated a very long time ago.
>
> >> On Thu, 11 Sep 2008, Barry Andrews wrote:
> >>
> >>> Hi All,
> >>>
> >>> I have a multi-threaded library that is linked against libpthread.
> >>> When I
> >>> load this lib into a tclsh process on FreeBSD, I get this error,
> >>> "Recurse on
> >>> private mutex". and crash. I understand that I can have this issue
> >>> when the
> >>> executable is not linked against libpthread but one of the loaded
> >>> libs is.
> >>> Basically, it thinks it's in single threaded mode.
> >>
> >> This must be an older version of FreeBSD.  I think you must
> >> link your application (tclsh or whatever) against libpthread
> >> in order for this to work.  The libc functions won't get properly
> >> overloaded by their equivalents in libpthread unless you do
> >> this.
>
> --
> | Jeremy Chadwick                                jdc at parodius.com |
> | Parodius Networking                       http://www.parodius.com/ |
> | UNIX Systems Administrator                  Mountain View, CA, USA |
> | Making life hard for others since 1977.              PGP: 4BD6C0CB |
>
>



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?eda4c18b0809120626u48fbe5e2pdf7147d71d1f8def>