From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 2636 invoked by alias); 21 Oct 2003 12:54:22 -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 2592 invoked from network); 21 Oct 2003 12:54:21 -0000 Received: from unknown (HELO nevyn.them.org) (66.93.172.17) by sources.redhat.com with SMTP; 21 Oct 2003 12:54:21 -0000 Received: from drow by nevyn.them.org with local (Exim 4.24 #1 (Debian)) id 1ABw1k-0005Ws-DV; Tue, 21 Oct 2003 08:54:20 -0400 Date: Tue, 21 Oct 2003 12:54:00 -0000 From: Daniel Jacobowitz To: "Kremer Markus (MPI/SFR)" Cc: "'gdb@sources.redhat.com'" Subject: Re: wrong backtrace / __JCR_LIST__ instead of real function name Message-ID: <20031021125420.GB21053@nevyn.them.org> Mail-Followup-To: "Kremer Markus (MPI/SFR)" , "'gdb@sources.redhat.com'" References: Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: User-Agent: Mutt/1.5.1i X-SW-Source: 2003-10/txt/msg00233.txt.bz2 On Tue, Oct 21, 2003 at 01:05:34PM +0200, Kremer Markus (MPI/SFR) wrote: > Hello, > i am using gcc 3.2 and gdb 5.3. > One thread of my programm calls > pthread_start_thread->wrapper_routine->acom_loop->acom->acom_read->select. > > When i debug my application i get strange backtraces. > instead of acom_read() __JCR_LIST__() is displayed in frame #1. > > I had similar problems at other places in my code. > When i used gcc 2.9x and gdb 5.2 i had the same problems. > > Any clues what went wrong? > .... > pressing CTRL-C > .... > Program received signal SIGINT, Interrupt. > [Switching to Thread 3076 (LWP 26480)] > 0x401ad6ae in select () from > //app/i33tools/gcc/gcc-3.2c/i386-linux/lib/libc.so.6 > (gdb) bt > #0 0x401ad6ae in select () from > //app/i33tools/gcc/gcc-3.2c/i386-linux/lib/libc.so.6 > #1 0x0805e9cc in __JCR_LIST__ () This means GDB couldn't figure out how to backtrace from select. It's an assembly wrapper, so it's hard to manually figure out the frame location. Recent versions of gdb and binutils support annotating assembly functions to describe the backtrace. Most libc functions will eventually be annotated, since NPTL uses this information also. -- Daniel Jacobowitz MontaVista Software Debian GNU/Linux Developer