Kostik Belousov wrote: > 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. * In libthr case, in addition to above, we must modify libthr code to provide implementation of the locks for rtld. right? -- Kazuaki Oda _______________________________________________ freebsd-hackers@freebsd.org mailing list http://lists.freebsd.org/mailman/listinfo/freebsd-hackers To unsubscribe, send any mail to "[EMAIL PROTECTED]"