From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 28131 invoked by alias); 27 Apr 2005 19:01:14 -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 28117 invoked from network); 27 Apr 2005 19:01:10 -0000 Received: from unknown (HELO nevyn.them.org) (66.93.172.17) by sourceware.org with SMTP; 27 Apr 2005 19:01:10 -0000 Received: from drow by nevyn.them.org with local (Exim 4.50 #1 (Debian)) id 1DQrmX-0007aX-4Z; Wed, 27 Apr 2005 15:01:09 -0400 Date: Wed, 27 Apr 2005 22:46:00 -0000 From: Daniel Jacobowitz To: David Lecomber Cc: gdb Subject: Re: GDB locks up -- Cannot find new threads: generic error Message-ID: <20050427190108.GA28978@nevyn.them.org> Mail-Followup-To: David Lecomber , gdb References: <1114627357.31720.81.camel@cpc4-oxfd5-5-0-cust111.oxfd.cable.ntl.com> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: <1114627357.31720.81.camel@cpc4-oxfd5-5-0-cust111.oxfd.cable.ntl.com> User-Agent: Mutt/1.5.8i X-SW-Source: 2005-04/txt/msg00203.txt.bz2 On Wed, Apr 27, 2005 at 07:42:37PM +0100, David Lecomber wrote: > (gdb) b main > Breakpoint 1 at 0x804ed18: file > main.cpp, line 10. > (gdb) run > Starting program: a.out > warning: linux_test_for_tracefork: unexpected result from waitpid > (28261, > status 0x117f) > [Thread debugging using libthread_db enabled] > Error while reading shared library symbols: > Cannot find new threads: generic error > > at this point GDB does nothing and is unresponsive to any user input. > > The system is: > kernel-2.4.21-27.EL > glibc-2.3.2-95.30 At a guess, your kernel is buggered. You really should never see that warning. The unexpected signal is SIGCHLD; your kernel has accepted the SETOPTIONS but obviously failed to stop when the test thread vforked. > - and if it helps, I turned on debug of lin-lwp and saw: > > Starting program: ./a.out > CW: waitpid 28606 received Trace/breakpoint trap (stopped) > CW: waitpid 28606 received Child exited (stopped) > CW: waitpid 28606 received Child exited (stopped) > CW: waitpid 28606 received Child exited (stopped) > CW: waitpid 28606 received Child exited (stopped) > CW: waitpid 28606 received Child exited (stopped) > CW: waitpid 28606 received Child exited (stopped) > CW: waitpid 28606 received Child exited (stopped) > CW: waitpid 28606 received Child exited (stopped) > CW: waitpid 28606 received Child exited (stopped) > CW: waitpid 28606 received Child exited (stopped) > CW: waitpid 28606 received Child exited (stopped) > CW: waitpid 28606 received Child exited (stopped) > CW: waitpid 28606 received Child exited (stopped) > CW: waitpid 28606 received Trace/breakpoint trap (stopped) > warning: linux_test_for_tracefork: unexpected result from waitpid > (28629, > status > 0x117f) > CW: waitpid 28606 received Trace/breakpoint trap (stopped) > [Thread debugging using libthread_db enabled] > Error while reading shared library symbols: > Cannot find new threads: generic error > LLR: PTRACE_SINGLESTEP process 28606, 0 (resume event thread) > LLW: waitpid 28606 received Trace/breakpoint trap (stopped) So um, if the program has stopped, what does GDB think it's still waiting for? Might want to strace gdb (without -f, with -e wait4,ptrace). -- Daniel Jacobowitz CodeSourcery, LLC