Re: [patch] Re: dlopen() and dlclose() are not MT-safe? YES, esp. for libthr
- From: Kostik Belousov <kostikbel@xxxxxxxxx>
- Date: Fri, 24 Mar 2006 14:32:25 +0200
On Fri, Mar 24, 2006 at 08:54:34PM +0900, Kazuaki Oda wrote:
Kostik Belousov wrote:It does not work correctly with libc_r too.
I did understand the purpose of the thread mask code in
libexec/rtld/rtld_lock.c, or, more precisely, the condition where this code
works (for the context, see the mails with same subject on freebsd-hackers).
Look, that code assumes that blocking async signals would stop thread
scheduler from doing preemption of the current thread. This works
for libc_r, but fails in libpthread and libthr cases. libpthread provides
implementation of the locks for rtld. But libthr does not !
As result, rtld exhibit races when used with libthr. In other words,
libthr needs code to do proper locking.
Do you agree ? Does somebody already planned to do this work ?
Best regards,
Kostik Belousov
I'm a bit confused. Do you mean the following?
* The current implementation of rtld has a problem both with
libpthread and libthr. It works only with libc_r.
* In libpthread case, the problem goes away if we modify rtld code.Yes.
* In libthr case, in addition to above, we must modify libthr code toYes.
provide implementation of the locks for rtld.
Attachment:
pgpfXNMDJKS3w.pgp
Description: PGP signature
- References:
- dlopen() and dlclose() are not MT-safe?
- From: Kazuaki Oda
- Re: dlopen() and dlclose() are not MT-safe?
- From: Kostik Belousov
- Re: dlopen() and dlclose() are not MT-safe?
- From: Kostik Belousov
- Re: dlopen() and dlclose() are not MT-safe?
- From: Kazuaki Oda
- [patch] Re: dlopen() and dlclose() are not MT-safe?
- From: Kostik Belousov
- Re: [patch] Re: dlopen() and dlclose() are not MT-safe? YES, esp. for libthr
- From: Kostik Belousov
- Re: [patch] Re: dlopen() and dlclose() are not MT-safe? YES, esp. for libthr
- From: Kazuaki Oda
- dlopen() and dlclose() are not MT-safe?
- Prev by Date: Re: [patch] Re: dlopen() and dlclose() are not MT-safe? YES, esp. for libthr
- Next by Date: Re: [patch] Re: dlopen() and dlclose() are not MT-safe? YES, esp. for libthr
- Previous by thread: Re: [patch] Re: dlopen() and dlclose() are not MT-safe? YES, esp. for libthr
- Next by thread: Re: [patch] Re: dlopen() and dlclose() are not MT-safe? YES, esp. for libthr
- Index(es):
Relevant Pages
|
|