Hi Peter,
On 12/01/2011 07:36 PM, Peter Korsgaard wrote:
"Andrew" == Andrew Rybchenko<[email protected]> writes:
Hi,
Andrew> linuxthreads.old implementation just wraps libc socket calls like
Andrew> recv() which set errno.
Andrew> Since errno is set from libc call and libc_hidden_proto() is used for
Andrew> __errno_location(),
Andrew> libc version of the function is called and provides pointer to global
Andrew> errno variable (not
Andrew> thread-specific location).
Andrew> Also it is important here that linuxthreads.old does not use
Andrew> TLS. That's why I use
Andrew> __UCLIBC_HAS_TLS__ conditional.
Andrew> There is no such bug in 0.9.30.x.
Sounds related to:
https://bugs.busybox.net/show_bug.cgi?id=2089
Yes, it is definitely related. I don't understand why the bug is RESOLVED
as WONTFIX. Of course it is nice that it is not an issue with NPTL, but as
far as I can see in Config.in NPTL is still considered unstable/immature.
IMHO, suggested patch is short, fix exactly what was broken, does
not touch code for NPTL (TLS) case.
The bug makes uClibc 0.9.32 as well as 0.9.31 unusable with
linuxthreads.old. I've not checked linuxthreads. IMHO, it would be
really nice if it is finally fixed in upcoming releases.
Thanks,
Andrew.
--
Andrew Rybchenko
OKTET Labs, St.-Petersburg, Russia Web: www.oktetlabs.ru
Office: +7 812 7832191 Fax: +7 812 7846591 Mobile: +7 921 7479683
_______________________________________________
uClibc mailing list
[email protected]
http://lists.busybox.net/mailman/listinfo/uclibc