From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 21247 invoked by alias); 14 Sep 2011 17:12:30 -0000 Received: (qmail 21226 invoked by uid 22791); 14 Sep 2011 17:12:25 -0000 X-SWARE-Spam-Status: No, hits=-1.5 required=5.0 tests=AWL,BAYES_00,DKIM_ADSP_CUSTOM_MED,FREEMAIL_FROM,NML_ADSP_CUSTOM_MED,RP_MATCHES_RCVD,T_TO_NO_BRKTS_FREEMAIL X-Spam-Check-By: sourceware.org Received: from sam.nabble.com (HELO sam.nabble.com) (216.139.236.26) by sourceware.org (qpsmtpd/0.43rc1) with ESMTP; Wed, 14 Sep 2011 17:12:07 +0000 Received: from isper.nabble.com ([192.168.236.156]) by sam.nabble.com with esmtp (Exim 4.72) (envelope-from ) id 1R3t0I-0001Iw-Mp for gdb@sourceware.org; Wed, 14 Sep 2011 10:12:06 -0700 Message-ID: <32465344.post@talk.nabble.com> Date: Wed, 14 Sep 2011 17:12:00 -0000 From: Jusctsch To: gdb@sourceware.org Subject: Re: Thread exit error : gdb7.2 in FreeBSD (built from ports) In-Reply-To: <201109141604.02961.pedro@codesourcery.com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit References: <32463912.post@talk.nabble.com> <201109141604.02961.pedro@codesourcery.com> X-IsSubscribed: yes Mailing-List: contact gdb-help@sourceware.org; run by ezmlm Precedence: bulk List-Id: List-Subscribe: List-Archive: List-Post: List-Help: , Sender: gdb-owner@sourceware.org X-SW-Source: 2011-09/txt/msg00046.txt.bz2 Sure, I am running on FreeBSD, and they pull vanilla source and apply their patches to it. In addition, I had written a patch on my own which is removing an error check in get_current_frame on thread exit and running into an issue later on. I'm disregarding the fatal errors in the previous post and focusing on the "invalid thread" issue. With just the FreeBSD patches applied on gdb7.2, I boot up my application and see the following: =thread-created,id="60",group-id="i1" ~"[New Thread 803855740 (LWP 100223)]\n" *running,thread-id="all" =thread-created,id="61",group-id="i1" ~"[New Thread 82b055500 (LWP 100235)]\n" *running,thread-id="all" ~"[Thread 82b055c00 (LWP 100221 FooTask) exited]\n" =thread-exited,id="58",group-id="i1" &"/tmp/.gdbinit:4: Error in sourced command file:\n" &"Invalid selected thread.\n" (gdb) c &"c\n" ~"Continuing.\n" &"Cannot execute this command without a live selected thread.\n" ^error,msg="Cannot execute this command without a live selected thread." (gdb) c Point being, I don't want to break into the debugger on an thread exit such as this. This behavior is different than in 6.1.1 for FreeBSD. See here: http://lists.freebsd.org/pipermail/freebsd-ports-bugs/2011-May/211521.html This is the bug. Thanks! Pedro Alves-10 wrote: > > On Wednesday 14 September 2011 15:26:33, Jusctsch wrote: >> >> Hello all, >> I have been running into a particularly interesting issue. >> When a thread exits in the application gdb is running, that exit doesn't >> seem to propagate in some of the fields in gdb. In many cases, this will >> end >> up crashing gdb (failing a thread_info=NULL gdbassert). >> >> [Thread 803855580 (LWP 100241 Foo) exited] >> error: Invalid selected thread. >> thread.c:583: internal-error: set_running: Asser tion >> `tp->state_ != THREAD_EXITED' failed. >> A problem internal to GDB has been detected, >> further debugging may prove unreliable. >> Quit this debugging session? (y or n) [answered Y; >> input >> not from terminal] >> thread.c:583: internal-error: set_running: Asser tion >> `tp->state_ != THREAD_EXITED' failed. >> A problem internal to GDB has been detected, >> further debugging may prove unreliable. >> Create a core file of GDB? (y or n) [answered Y; input >> not >> from terminal] >> >> Is this a symptom of FreeBSD and some libraries? > > It's a gdb bug. > > We'd need more context to understand the problem. > > You can debug gdb with gdb, and put a breakpoint on > `error' to catch that "error:", for example. Where's > that coming from? Sounds like your port has local > changes compared to the pristine FSF version? > >> Or is this a gross gdb issue? > > -- > Pedro Alves > > -- View this message in context: http://old.nabble.com/Thread-exit-error-%3A-gdb7.2-in-FreeBSD-%28built-from-ports%29-tp32463912p32465344.html Sent from the Sourceware - gdb list mailing list archive at Nabble.com.