From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 32588 invoked by alias); 16 Jul 2002 00:33:18 -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 32581 invoked from network); 16 Jul 2002 00:33:18 -0000 Received: from unknown (HELO racerx.ixiacom.com) (64.60.75.69) by sources.redhat.com with SMTP; 16 Jul 2002 00:33:18 -0000 Received: from ixiacom.com (dank.ixiacom.com [192.168.3.117]) by racerx.ixiacom.com with SMTP (Microsoft Exchange Internet Mail Service Version 5.5.2653.13) id 3866SYN3; Mon, 15 Jul 2002 17:31:21 -0700 Message-ID: <3D3373CA.8010207@ixiacom.com> Date: Mon, 15 Jul 2002 17:33:00 -0000 From: Dan Kegel User-Agent: Mozilla/5.0 (X11; U; Linux i686; en-US; rv:1.0.0) Gecko/20020615 Debian/1.0.0-3 MIME-Version: 1.0 To: Daniel Jacobowitz CC: gdb@sources.redhat.com Subject: Re: Crash in gdbserver on ppc405 - what vintage of libthread_db is recommended? References: <3D30B11B.5070005@ixiacom.com> <20020713172422.A30747@crack.them.org> Content-Type: text/plain; charset=us-ascii; format=flowed Content-Transfer-Encoding: 7bit X-SW-Source: 2002-07/txt/msg00156.txt.bz2 Right again. Once I switched to set solib-absolute-prefix /opt/hardhat/devkit/ppc/405/target as you suggested, everything was fine. Good luck figuring out how to detect this kind of misconfiguration, it would be helpful. - Dan Daniel Jacobowitz wrote: > I'll reiterate - I have about 99% confidence that your crash comes from > mismatched host and target libraries. This is far and away the most > frequent cause of problems, since libthread_db is not at all capable of > handling errors in mismatched symbol lookup. > > I'm still trying to figure out ways to detect this. I'm almost leaning > towards using libelf or a simple clone to take checksums of on-disk > .text sections... > > On Sat, Jul 13, 2002 at 04:00:43PM -0700, Dan Kegel wrote: > >>I tried gdbserver on the ppc405 on a large multithreaded C++ program >>compiled with g++3.0.2 or so. All I did was 'break main' >>and 'cont', and gdbserver crashed. So I updated to last week's >>snapshot (ftp://sources.redhat.com/pub/gdb/snapshots/current/gdb+dejagnu-weekly-CVS-20020709.tar.bz2), >>built gdbserver for debugging, and reproduced the problem while debugging >>gdbserver. Here's what popped up. Looks like the call to >>td_ta_thr_iter is bombing. I'm using the libthread_db from Hard Hat 2.0, >>dated about a year ago; perhaps I need to use a newer version? >>Or is gdbserver itself misbehaving? >> >>Program received signal SIGSEGV, Segmentation fault. >>0x10008844 in linux_read_memory (memaddr=1275058749, myaddr=0x7fefeda8 "", >> len=2094805880) at ../../../src/gdb/gdbserver/linux-low.c:1153 >>1153 = (PTRACE_XFER_TYPE *) alloca (count * sizeof (PTRACE_XFER_TYPE)); >>(gdb) bt >>#0 0x10008844 in linux_read_memory (memaddr=1275058749, myaddr=0x7fefeda8 "", >> len=2094805880) at ../../../src/gdb/gdbserver/linux-low.c:1153 >>#1 0x10005494 in read_inferior_memory (memaddr=1275058749, myaddr=0x7fefeda8 "", >> len=2094805880) at ../../../src/gdb/gdbserver/target.c:63 >>#2 0x10009740 in ps_pdread (ph=0x1001c850, addr=1275058749, buf=0x7fefeda8, >> size=2094805880) at ../../../src/gdb/gdbserver/proc-service.c:112 >>#3 0x0ffdd000 in td_thr_setgregs () from /lib/libthread_db.so.1 >>#4 0x0ffdd1c4 in td_thr_tsd () from /lib/libthread_db.so.1 >>#5 0x1000958c in thread_db_find_new_threads () >> at ../../../src/gdb/gdbserver/thread-db.c:308 >>#6 0x10009650 in thread_db_init () at ../../../src/gdb/gdbserver/thread-db.c:334 >>#7 0x10008bb8 in linux_look_up_symbols () at ../../../src/gdb/gdbserver/linux-low.c:1226 >>#8 0x10003ef4 in handle_query (own_buf=0x1001eee8 "qSymbol::") >> at ../../../src/gdb/gdbserver/server.c:71 >>#9 0x100042e8 in main (argc=3, argv=0x7ffffe84) >> at ../../../src/gdb/gdbserver/server.c:192 >>#10 0x0feb0dbc in ngettext () from /lib/libc.so.6 >>(gdb) >> > >