From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 3308 invoked by alias); 25 Jun 2002 16:29:50 -0000 Mailing-List: contact gdb-help@sources.redhat.com; run by ezmlm Precedence: bulk List-Subscribe: List-Archive: List-Post: List-Help: , Sender: gdb-owner@sources.redhat.com Received: (qmail 3255 invoked from network); 25 Jun 2002 16:29:47 -0000 Received: from unknown (HELO crack.them.org) (65.125.64.184) by sources.redhat.com with SMTP; 25 Jun 2002 16:29:47 -0000 Received: from cs2876-108.austin.rr.com ([24.28.76.108] helo=branoic) by crack.them.org with asmtp (Exim 3.12 #1 (Debian)) id 17Mszd-0001OG-00; Tue, 25 Jun 2002 11:16:37 -0500 Received: from drow by branoic with local (Exim 3.35 #1 (Debian)) id 17Msz8-0004sk-00; Tue, 25 Jun 2002 12:16:06 -0400 Date: Tue, 25 Jun 2002 09:29:00 -0000 From: Daniel Jacobowitz To: James Cownie Cc: gdb@sources.redhat.com Subject: Re: GDB support for thread-local storage Message-ID: <20020625161605.GA18749@branoic.them.org> Mail-Followup-To: James Cownie , gdb@sources.redhat.com References: <20020625155555.GA18083@branoic.them.org> <17Msup-0Qw-00@etnus.com> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <17Msup-0Qw-00@etnus.com> User-Agent: Mutt/1.3.28i X-SW-Source: 2002-06/txt/msg00252.txt.bz2 On Tue, Jun 25, 2002 at 05:11:39PM +0100, James Cownie wrote: > > > You'll never get them to document interface changes in pthreads' > > internal data structures. You're welcome to try if you like pain > > more than I do. The only layer the glibc folks support for > > accessing this data is thread_db. > > I'm not sugggesting that they document it, rather that they provide a > version symbol which tells you which version of the pthreads code you > have, and then name libthread_db with a name which includes the > version number. > > All I'm after is that one can tell from a debugger which version of > the pthread library one is looking at and then deduce which > libthread_db.so to dlopen. > > Something as trivial as > > static volatile int __pthread_version_number = 123; > > somwehere would probably do. > > The documentation requirement would be > > The static symbol __pthread_version_number gives the version number > of the pthread library to allow a debugger to locate the appropriate > version of libthread_db. > > and that's it. It doesn't change... > > Thought they need to remember to change the version number when they > make changes which affect libthread_db. That's what I meant by document. If you look at libthread_db, you'll see that it includes the internal header which describes the layout of a thread descriptor. Changes to that structure are not counted and I don't think they'll like the idea. They're also hard to identify, since it draws types from other headers. -- Daniel Jacobowitz Carnegie Mellon University MontaVista Software Debian GNU/Linux Developer