> > Anyway, look at configure flags for basic libc in debian/sysdeps/i386.mk: > > > > libc_extra_config_options = $(extra_config_options) --with-tls > > --without-__thread > > > > It doesn't use TLS internally, there is no .tbss ot .tdata segment in > > libc.so. > > There is: > > $ objdump -T libc-2.3.5.so | grep -e "\(tbss\|tdata\)" > 001315e0 l d .tdata 00000000 .tdata > 001315e8 l d .tbss 00000000 .tbss > 00000008 g D .tbss 00000004 GLIBC_PRIVATE errno > 0000001c g D .tbss 00000004 GLIBC_PRIVATE h_errno > 00000004 g D .tdata 00000004 GLIBC_PRIVATE __resp > > Please also look at how syscall() sets errno: > 0x000cd863 <syscall+67>: mov %edx,%gs:(%ecx)
It is in optimized one: Package: libc6-i686 Architecture: i386 Source: glibc Version: 2.3.5-11 $ objdump -T /lib/tls/i686/cmov/libc-2.3.5.so | grep -e "\(tbss\|tdata\)" | wc 5 33 267 But not in the basic one: $ dpkg -s libc6 Package: libc6 Architecture: i386 Source: glibc Version: 2.3.5-11 $ objdump -T /lib/libc-2.3.5.so | grep -e "\(tbss\|tdata\)" | wc 0 0 0 Petr -- To UNSUBSCRIBE, email to [EMAIL PROTECTED] with a subject of "unsubscribe". Trouble? Contact [EMAIL PROTECTED]