From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 567 invoked by alias); 20 Nov 2001 02:51:38 -0000 Mailing-List: contact gdb-patches-help@sourceware.cygnus.com; run by ezmlm Precedence: bulk List-Subscribe: List-Archive: List-Post: List-Help: , Sender: gdb-patches-owner@sources.redhat.com Received: (qmail 544 invoked from network); 20 Nov 2001 02:51:34 -0000 Received: from unknown (HELO ocean.lucon.org) (24.176.137.160) by sourceware.cygnus.com with SMTP; 20 Nov 2001 02:51:34 -0000 Received: by ocean.lucon.org (Postfix, from userid 1000) id 29C9A125C3; Mon, 19 Nov 2001 18:51:32 -0800 (PST) Date: Wed, 07 Nov 2001 20:26:00 -0000 From: "H . J . Lu" To: Kevin Buettner Cc: gdb-patches@sources.redhat.com Subject: Re: [PATCH RFA] lin-lwp.c: Block SIGCHLD events when attaching Message-ID: <20011119185132.A16148@lucon.org> References: <1011119193045.ZM16376@ocotillo.lan> <20011119113832.A8778@lucon.org> <1011120004229.ZM17105@ocotillo.lan> <1011120022446.ZM17248@ocotillo.lan> Mime-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline User-Agent: Mutt/1.2.5i In-Reply-To: <1011120022446.ZM17248@ocotillo.lan>; from kevinb@cygnus.com on Mon, Nov 19, 2001 at 07:24:46PM -0700 X-SW-Source: 2001-11/txt/msg00137.txt.bz2 On Mon, Nov 19, 2001 at 07:24:46PM -0700, Kevin Buettner wrote: > On Nov 19, 5:42pm, Kevin Buettner wrote: > > > > # gcc -g ex11.c -lpthread -lrt -D_GNU_SOURCE -static > > > # a.out > > > # gdb a.out > > > ... > > > (gdb) att 14226 > > > Attaching to program: /home/hjl/bugs/gdb/thread/a.out, process 14226 > > > ... > > > lin-lwp.c:620: gdb-internal-error: stop_wait_callback: Assertion `pid == GET_LWP (lp->ptid)' failed. > > > An internal GDB error was detected. This may make further > > > > > > ex11.c is from glibc and 14226 is the first thread. Your patch may fix > > > it also. > > > > I think this might be a different problem. I haven't been able to > > reproduce the exact problem that you mentioned above, either with > > or without my patch. > > > > I do occassionally see "Cannot find new threads: generic error". I'm > > going to try to figure this one out... > > The "Cannot find new threads: generic error" that I'm seeing in this > program is happening because td_ta_thr_iter() in libthread_db.so is > requesting that gdb read the memory associated with a struct > _pthread_descr_struct (which has size 1056). It turns out that gdb > is able to read 1024 bytes of this struct, but no more. (ptrace() > returns EIO when attempting to read more.) > > I'm not sure why this is happening. Could it be that the manager thread > is in the midst of updating the descriptor data structures? Can you try gdb 5.1 to see what happens with ex11.c? H.J.