From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 11501 invoked by alias); 30 Mar 2007 19:02:59 -0000 Received: (qmail 11419 invoked by uid 22791); 30 Mar 2007 19:02:58 -0000 X-Spam-Check-By: sourceware.org Received: from sibelius.xs4all.nl (HELO brahms.sibelius.xs4all.nl) (82.92.89.47) by sourceware.org (qpsmtpd/0.31) with ESMTP; Fri, 30 Mar 2007 20:02:42 +0100 Received: from brahms.sibelius.xs4all.nl (kettenis@localhost.sibelius.xs4all.nl [127.0.0.1]) by brahms.sibelius.xs4all.nl (8.14.0/8.14.0) with ESMTP id l2UJ2CEB017607; Fri, 30 Mar 2007 21:02:12 +0200 (CEST) Received: (from kettenis@localhost) by brahms.sibelius.xs4all.nl (8.14.0/8.14.0/Submit) id l2UJ2BpD017912; Fri, 30 Mar 2007 21:02:12 +0200 (CEST) Date: Fri, 30 Mar 2007 19:02:00 -0000 Message-Id: <200703301902.l2UJ2BpD017912@brahms.sibelius.xs4all.nl> From: Mark Kettenis To: drow@false.org CC: gdb-patches@sourceware.org, kevinb@redhat.com In-reply-to: <20070330144519.GC14014@caradoc.them.org> (message from Daniel Jacobowitz on Fri, 30 Mar 2007 10:45:19 -0400) Subject: Re: [rfa] Extra warning in solib-svr4 References: <20070330144519.GC14014@caradoc.them.org> Mailing-List: contact gdb-patches-help@sourceware.org; run by ezmlm Precedence: bulk List-Id: List-Subscribe: List-Archive: List-Post: List-Help: , Sender: gdb-patches-owner@sourceware.org X-SW-Source: 2007-03/txt/msg00369.txt.bz2 > Date: Fri, 30 Mar 2007 10:45:19 -0400 > From: Daniel Jacobowitz > > Suppose you take a static linked program, strip it, and run it under > GDB. You'll get this warning: > > warning: shared library handler failed to enable breakpoint > > You can reproduce this without stripping - you need to have no .interp > section and no functions named _start or main, that's all. So this > actually came up when using KGDB to debug a Linux kernel. Trying to debug a stripped static program is a rather silly thing to do. That said ... > The shared library breakpoint is generally not important in this > case. It's more important if there was a .interp but something went > wrong while trying to load the referenced executable; that's got a > separate warning: > > warning (_("Unable to find dynamic linker breakpoint function.\n" > "GDB will be unable to debug shared library initializers\n" > "and track explicitly loaded dynamic code.")); > > I think the more general warning is not useful, since it has a high > correlation with non-shared programs. OK to remove it? ... I think the simplification is good, so no objection from me. > 2007-03-30 Daniel Jacobowitz > > * solib-svr4.c (enable_break): Simplify return value. > (svr4_solib_create_inferior_hook): Do not warn if enable_break fails. > > Index: solib-svr4.c > =================================================================== > RCS file: /cvs/src/src/gdb/solib-svr4.c,v > retrieving revision 1.61 > diff -u -p -r1.61 solib-svr4.c > --- solib-svr4.c 9 Jan 2007 17:58:58 -0000 1.61 > +++ solib-svr4.c 30 Mar 2007 14:39:46 -0000 > @@ -979,8 +979,6 @@ exec_entry_point (struct bfd *abfd, stru > static int > enable_break (void) > { > - int success = 0; > - > #ifdef BKPT_AT_SYMBOL > > struct minimal_symbol *msymbol; > @@ -1146,13 +1144,9 @@ enable_break (void) > return 1; > } > } > - > - /* Nothing good happened. */ > - success = 0; > - > #endif /* BKPT_AT_SYMBOL */ > > - return (success); > + return 0; > } > > /* > @@ -1357,10 +1351,7 @@ svr4_solib_create_inferior_hook (void) > } > > if (!enable_break ()) > - { > - warning (_("shared library handler failed to enable breakpoint")); > - return; > - } > + return; > > #if defined(_SCO_DS) > /* SCO needs the loop below, other systems should be using the >