> On May 27, 2015, at 6:21 PM, Sheng Yong <shengyo...@huawei.com> wrote: > > Hi, > > On 5/28/2015 3:18 AM, Rich Felker wrote: >> On Wed, May 27, 2015 at 05:10:53PM +0800, Sheng Yong wrote: >>> Hi, >>> >>> I encountered a problem when I test thread local storage >>> on my arm board (kernel 3.10.77 and uclibc 0.99.3.2). >>> >>> Please let me know if I am doing something wrong for >>> debugging TLS. >>> >>> on my x86 host machine: >>> root@kernel-host:~> cat tls.c >>> __thread int i =5; >>> >>> int >>> main (int argc, char **argv) >>> { >>> return 0; >>> } >>> >>> root@kernel-host:~> arm-linux-uclibceabi-gcc -o tls tls.c -g -lpthread >> >> If you add output (printf("%d", i)) to the program and actually run >> it, does it work? It looks to me like the failure you're observing is >> the inability of gdb to find the TLS while debugging, which is >> separate from whether TLS is supported. > I test it, it can printf the value of `i'. I don't know if there are any > options > that impact on gcc or gdb. I checked the configure log and compile log, there > is > no optins `-disable-tls' or `-no-tls' or the like. > > $ cat tls.c > #include <stdio.h> > > __thread int i =5; > > int > main (int argc, char **argv) > { > printf("%d\n", i); > return 0; > } > > sh-4.2# ./tls > 5 >
Seems like gdb is not able to comprehend the TLS structure that uclibc is putting. So you need to investigate that part, either gdb or libthread-db may be where the issue lies. > thanks, > Sheng > >> >> Rich >> >> > > _______________________________________________ > uClibc mailing list > uClibc@uclibc.org > http://lists.busybox.net/mailman/listinfo/uclibc
signature.asc
Description: Message signed with OpenPGP using GPGMail
_______________________________________________ uClibc mailing list uClibc@uclibc.org http://lists.busybox.net/mailman/listinfo/uclibc