From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 23638 invoked by alias); 21 Aug 2006 14:37:38 -0000 Received: (qmail 23624 invoked by uid 22791); 21 Aug 2006 14:37:36 -0000 X-Spam-Check-By: sourceware.org Received: from mail.imc-berlin.de (HELO mail.imc-berlin.de) (217.110.46.186) by sourceware.org (qpsmtpd/0.31) with ESMTP; Mon, 21 Aug 2006 14:37:29 +0000 Received: from mailserver.berlin.imc-berlin.de (mailserver.berlin.imc-berlin.de [10.0.0.19]) by mail.imc-berlin.de (Postfix) with ESMTP id 431FA2F026 for ; Mon, 21 Aug 2006 17:31:44 +0200 (CEST) Received: from localhost (localhost [127.0.0.1]) by mailserver.berlin.imc-berlin.de (Postfix) with ESMTP id C25F7A377 for ; Mon, 21 Aug 2006 16:37:26 +0200 (CEST) Received: from [10.0.2.29] (zarges.berlin.imc-berlin.de [10.0.2.29]) by mailserver.berlin.imc-berlin.de (Postfix) with ESMTP id D4CBEA26E for ; Mon, 21 Aug 2006 16:37:25 +0200 (CEST) Message-ID: <44E9C47A.9090605@imc-berlin.de> Date: Mon, 21 Aug 2006 14:37:00 -0000 From: "Zarges, Olav" User-Agent: Thunderbird 1.5 (Windows/20051201) MIME-Version: 1.0 To: "gdb@sourceware.org" Subject: Re: gdb-6.5 produces infinite backtrace on ARM References: <44E181DE.7040905@imc-berlin.de> <20060815124053.GA18496@nevyn.them.org> <20060819052434.GA15612@nevyn.them.org> <44E999B4.5030905@imc-berlin.de> <20060821124241.GA16416@nevyn.them.org> In-Reply-To: <20060821124241.GA16416@nevyn.them.org> Content-Type: multipart/mixed; boundary="------------090708040608000602060001" X-IsSubscribed: yes Mailing-List: contact gdb-help@sourceware.org; run by ezmlm Precedence: bulk List-Subscribe: List-Archive: List-Post: List-Help: , Sender: gdb-owner@sourceware.org X-SW-Source: 2006-08/txt/msg00159.txt.bz2 This is a multi-part message in MIME format. --------------090708040608000602060001 Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: 7bit Content-length: 1248 Daniel Jacobowitz wrote: > On Mon, Aug 21, 2006 at 01:32:04PM +0200, Zarges, Olav wrote: >> Sounds pretty good. Good job! I can't wait to lay my hands on the patch... >> >> Another question arose from you answer: what is a gdb/mi front-end supposed >> to do when a message like >> >> "Backtrace stopped: frame did not save the PC" or >> "Previous frame identical to this frame (corrupt stack?)" or >> ... >> >> is returned at the end of the backtrace? Eclipse just throws away the >> complete backtrace for the corresponding thread. > > What other versions of GDB are you looking at? With older versions, it was an > ^error; with newer it's a ~"console output message". I would not > expect Eclipse to throw away the backtrace if there's a console output > message. I just verified it with gdb-6.3 which doesn't show any backtrace at all when setting backtrace limit (--> Backtrace limit of 20 exceeded, see dump-6.3.txt). The current version gdb-6.5 shows backtrace and the message "Previous frame identical to this frame (corrupt stack?)" (see dump-6.5.txt). Eclipse then fails to show any bt info at all for this thread (I can supply a screenshot of this behaviour, 109 KByte PNG). btw: I'm using the latest Eclipse and CDT release. --------------090708040608000602060001 Content-Type: text/plain; name="dump-6.5.txt" Content-Transfer-Encoding: 7bit Content-Disposition: inline; filename="dump-6.5.txt" Content-length: 7864 (gdb) t a all bt Thread 4 (thread 32771): #0 0x402a319c in nanosleep () from /opt/crosstool/gcc-3.4.4-glibc-2.3.5-linux-2.6.12/arm-softfloat-linux-gnu/arm-softfloat-linux-gnu/lib/libc.so.6 #1 0x402a3078 in sleep () from /opt/crosstool/gcc-3.4.4-glibc-2.3.5-linux-2.6.12/arm-softfloat-linux-gnu/arm-softfloat-linux-gnu/lib/libc.so.6 #2 0x00008784 in f2 () at ../threads.cpp:31 #3 0x000087a4 in thread_function2 () at ../threads.cpp:36 #4 0x40024410 in pthread_start_thread () from /opt/crosstool/gcc-3.4.4-glibc-2.3.5-linux-2.6.12/arm-softfloat-linux-gnu/arm-softfloat-linux-gnu/lib/libpthread.so.0 #5 0x40024410 in pthread_start_thread () from /opt/crosstool/gcc-3.4.4-glibc-2.3.5-linux-2.6.12/arm-softfloat-linux-gnu/arm-softfloat-linux-gnu/lib/libpthread.so.0 #6 0x40024410 in pthread_start_thread () from /opt/crosstool/gcc-3.4.4-glibc-2.3.5-linux-2.6.12/arm-softfloat-linux-gnu/arm-softfloat-linux-gnu/lib/libpthread.so.0 #7 0x40024410 in pthread_start_thread () from /opt/crosstool/gcc-3.4.4-glibc-2.3.5-linux-2.6.12/arm-softfloat-linux-gnu/arm-softfloat-linux-gnu/lib/libpthread.so.0 #8 0x40024410 in pthread_start_thread () from /opt/crosstool/gcc-3.4.4-glibc-2.3.5-linux-2.6.12/arm-softfloat-linux-gnu/arm-softfloat-linux-gnu/lib/libpthread.so.0 #9 0x40024410 in pthread_start_thread () from /opt/crosstool/gcc-3.4.4-glibc-2.3.5-linux-2.6.12/arm-softfloat-linux-gnu/arm-softfloat-linux-gnu/lib/libpthread.so.0 #10 0x40024410 in pthread_start_thread () from /opt/crosstool/gcc-3.4.4-glibc-2.3.5-linux-2.6.12/arm-softfloat-linux-gnu/arm-softfloat-linux-gnu/lib/libpthread.so.0 #11 0x40024410 in pthread_start_thread () from /opt/crosstool/gcc-3.4.4-glibc-2.3.5-linux-2.6.12/arm-softfloat-linux-gnu/arm-softfloat-linux-gnu/lib/libpthread.so.0 ---Type to continue, or q to quit--- #12 0x40024410 in pthread_start_thread () from /opt/crosstool/gcc-3.4.4-glibc-2.3.5-linux-2.6.12/arm-softfloat-linux-gnu/arm-softfloat-linux-gnu/lib/libpthread.so.0 #13 0x40024410 in pthread_start_thread () from /opt/crosstool/gcc-3.4.4-glibc-2.3.5-linux-2.6.12/arm-softfloat-linux-gnu/arm-softfloat-linux-gnu/lib/libpthread.so.0 #14 0x40024410 in pthread_start_thread () from /opt/crosstool/gcc-3.4.4-glibc-2.3.5-linux-2.6.12/arm-softfloat-linux-gnu/arm-softfloat-linux-gnu/lib/libpthread.so.0 #15 0x40024410 in pthread_start_thread () from /opt/crosstool/gcc-3.4.4-glibc-2.3.5-linux-2.6.12/arm-softfloat-linux-gnu/arm-softfloat-linux-gnu/lib/libpthread.so.0 #16 0x40024410 in pthread_start_thread () from /opt/crosstool/gcc-3.4.4-glibc-2.3.5-linux-2.6.12/arm-softfloat-linux-gnu/arm-softfloat-linux-gnu/lib/libpthread.so.0 #17 0x40024410 in pthread_start_thread () from /opt/crosstool/gcc-3.4.4-glibc-2.3.5-linux-2.6.12/arm-softfloat-linux-gnu/arm-softfloat-linux-gnu/lib/libpthread.so.0 #18 0x40024410 in pthread_start_thread () from /opt/crosstool/gcc-3.4.4-glibc-2.3.5-linux-2.6.12/arm-softfloat-linux-gnu/arm-softfloat-linux-gnu/lib/libpthread.so.0 #19 0x40024410 in pthread_start_thread () from /opt/crosstool/gcc-3.4.4-glibc-2.3.5-linux-2.6.12/arm-softfloat-linux-gnu/arm-softfloat-linux-gnu/lib/libpthread.so.0 Thread 3 (thread 32769): #0 0x402c8d60 in poll () from /opt/crosstool/gcc-3.4.4-glibc-2.3.5-linux-2.6.12/arm-softfloat-linux-gnu/arm-softfloat-linux-gnu/lib/libc.so.6 #1 0x40024114 in __pthread_manager () from /opt/crosstool/gcc-3.4.4-glibc-2.3.5-linux-2.6.12/arm-softfloat-linux-gnu/arm-softfloat-linux-gnu/lib/libpthread.so.0 #2 0x40024304 in __pthread_manager_event () from /opt/crosstool/gcc-3.4.4-glibc-2.3.5-linux-2.6.12/arm-softfloat-linux-gnu/arm-softfloat-lin-ux-gnu/lib/libpthread.so.0 --Type to continue, or q to quit--- #3 0x40024304 in __pthread_manager_event () from /opt/crosstool/gcc-3.4.4-glibc-2.3.5-linux-2.6.12/arm-softfloat-linux-gnu/arm-softfloat-linux-gnu/lib/libpthread.so.0 Previous frame identical to this frame (corrupt stack?) Thread 2 (thread 16386): #0 f1 () at ../threads.cpp:13 #1 0x0000870c in thread_function1 () at ../threads.cpp:18 #2 0x40024410 in pthread_start_thread () from /opt/crosstool/gcc-3.4.4-glibc-2.3.5-linux-2.6.12/arm-softfloat-linux-gnu/arm-softfloat-linux-gnu/lib/libpthread.so.0 #3 0x40024410 in pthread_start_thread () from /opt/crosstool/gcc-3.4.4-glibc-2.3.5-linux-2.6.12/arm-softfloat-linux-gnu/arm-softfloat-linux-gnu/lib/libpthread.so.0 #4 0x40024410 in pthread_start_thread () from /opt/crosstool/gcc-3.4.4-glibc-2.3.5-linux-2.6.12/arm-softfloat-linux-gnu/arm-softfloat-linux-gnu/lib/libpthread.so.0 #5 0x40024410 in pthread_start_thread () from /opt/crosstool/gcc-3.4.4-glibc-2.3.5-linux-2.6.12/arm-softfloat-linux-gnu/arm-softfloat-linux-gnu/lib/libpthread.so.0 #6 0x40024410 in pthread_start_thread () from /opt/crosstool/gcc-3.4.4-glibc-2.3.5-linux-2.6.12/arm-softfloat-linux-gnu/arm-softfloat-linux-gnu/lib/libpthread.so.0 #7 0x40024410 in pthread_start_thread () from /opt/crosstool/gcc-3.4.4-glibc-2.3.5-linux-2.6.12/arm-softfloat-linux-gnu/arm-softfloat-linux-gnu/lib/libpthread.so.0 #8 0x40024410 in pthread_start_thread () from /opt/crosstool/gcc-3.4.4-glibc-2.3.5-linux-2.6.12/arm-softfloat-linux-gnu/arm-softfloat-linux-gnu/lib/libpthread.so.0 #9 0x40024410 in pthread_start_thread () from /opt/crosstool/gcc-3.4.4-glibc-2.3.5-linux-2.6.12/arm-softfloat-linux-gnu/arm-softfloat-linux-gnu/lib/libpthread.so.0 #10 0x40024410 in pthread_start_thread () from /opt/crosstool/gcc-3.4.4-glibc-2.3.5-linux-2.6.12/arm-softfloat-linux-gnu/arm-softfloat-linux-gnu/lib/libpthread.so.0 --Type to continue, or q to quit--- #11 0x40024410 in pthread_start_thread () from /opt/crosstool/gcc-3.4.4-glibc-2.3.5-linux-2.6.12/arm-softfloat-linux-gnu/arm-softfloat-linux-gnu/lib/libpthread.so.0 #12 0x40024410 in pthread_start_thread () from /opt/crosstool/gcc-3.4.4-glibc-2.3.5-linux-2.6.12/arm-softfloat-linux-gnu/arm-softfloat-linux-gnu/lib/libpthread.so.0 #13 0x40024410 in pthread_start_thread () from /opt/crosstool/gcc-3.4.4-glibc-2.3.5-linux-2.6.12/arm-softfloat-linux-gnu/arm-softfloat-linux-gnu/lib/libpthread.so.0 #14 0x40024410 in pthread_start_thread () from /opt/crosstool/gcc-3.4.4-glibc-2.3.5-linux-2.6.12/arm-softfloat-linux-gnu/arm-softfloat-linux-gnu/lib/libpthread.so.0 #15 0x40024410 in pthread_start_thread () from /opt/crosstool/gcc-3.4.4-glibc-2.3.5-linux-2.6.12/arm-softfloat-linux-gnu/arm-softfloat-linux-gnu/lib/libpthread.so.0 #16 0x40024410 in pthread_start_thread () from /opt/crosstool/gcc-3.4.4-glibc-2.3.5-linux-2.6.12/arm-softfloat-linux-gnu/arm-softfloat-linux-gnu/lib/libpthread.so.0 #17 0x40024410 in pthread_start_thread () from /opt/crosstool/gcc-3.4.4-glibc-2.3.5-linux-2.6.12/arm-softfloat-linux-gnu/arm-softfloat-linux-gnu/lib/libpthread.so.0 #18 0x40024410 in pthread_start_thread () from /opt/crosstool/gcc-3.4.4-glibc-2.3.5-linux-2.6.12/arm-softfloat-linux-gnu/arm-softfloat-linux-gnu/lib/libpthread.so.0 #19 0x40024410 in pthread_start_thread () from /opt/crosstool/gcc-3.4.4-glibc-2.3.5-linux-2.6.12/arm-softfloat-linux-gnu/arm-softfloat-linux-gnu/lib/libpthread.so.0 Thread 1 (thread 16384): #0 0x40027148 in __pthread_sigsuspend () from /opt/crosstool/gcc-3.4.4-glibc-2.3.5-linux-2.6.12/arm-softfloat-linux-gnu/arm-softfloat-linux-gnu/lib/libpthread.so.0 #1 0x40026fcc in __pthread_wait_for_restart_signal () ---Type to continue, or q to quit--- from /opt/crosstool/gcc-3.4.4-glibc-2.3.5-linux-2.6.12/arm-softfloat-linux-gnu/arm-softfloat-linux-gnu/lib/libpthread.so.0 #2 0x40023cfc in pthread_join () from /opt/crosstool/gcc-3.4.4-glibc-2.3.5-linux-2.6.12/arm-softfloat-linux-gnu/arm-softfloat-linux-gnu/lib/libpthread.so.0 #3 0x00008818 in main (argc=1, argv=0xbeb71ea4) at ../threads.cpp:50 13 sleep(3); (gdb) --------------090708040608000602060001 Content-Type: text/plain; name="dump-6.3.txt" Content-Transfer-Encoding: 7bit Content-Disposition: inline; filename="dump-6.3.txt" Content-length: 318 (gdb) t a all bt Backtrace limit of 20 exceeded Thread 4 (Thread 32771): #-1 0x402a319c in nanosleep () from /opt/crosstool/gcc-3.4.4-glibc-2.3.5-linux-2.6.12/arm-softfloat-linux-gnu/arm-softfloat-linux-gnu/lib/libc.so.6 Backtrace limit of 20 exceeded Backtrace limit of 20 exceeded 13 sleep(3); (gdb) --------------090708040608000602060001--