|
Message-ID: <20220209183326.GB7074@brightrain.aerifal.cx> Date: Wed, 9 Feb 2022 13:33:26 -0500 From: Rich Felker <dalias@...c.org> To: Yehuda Yitchak <yehuda80@...il.com> Cc: musl@...ts.openwall.com Subject: Re: Accessing Thread-Local-Storage in GDB On Wed, Feb 09, 2022 at 09:32:10AM +0200, Yehuda Yitchak wrote: > Hello > > one of the applications i am debugging is compiled using MUSL libc > (aarch64) Version 1.1.19 > when i inspect a core-dump and try to view TLS variables with "print > __percpu_dev" gdb (v8.3) complains: > > Cannot find thread-local storage for LWP 22873, executable file > <core-dump-file> > Cannot find thread-local variables on this target > > Any idea how I can overcome this? > Appreciate if you could CC me since i'm not subscribed. I think this is a consequence of gdb wanting to have a libthread_db (a GNU- and Solaris-ism) to tell it how to interact with the threads implementation of the process being debugged rather than just doing things in a libpthread-agnostic way like musl wants it to do. I think it should be fixable on the gdb side without too much headache, but I don't know how. As a workaround, if the program is dynamic-linked, you can do something like print *(int *)dlsym(0, "foo") from the relevant thread context and it should work. Rich
Powered by blists - more mailing lists
Confused about mailing lists and their use? Read about mailing lists on Wikipedia and check out these guidelines on proper formatting of your messages.