From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 17264 invoked by alias); 30 Mar 2007 14:45:40 -0000 Received: (qmail 17243 invoked by uid 22791); 30 Mar 2007 14:45:39 -0000 X-Spam-Check-By: sourceware.org Received: from return.false.org (HELO return.false.org) (66.207.162.98) by sourceware.org (qpsmtpd/0.31) with ESMTP; Fri, 30 Mar 2007 15:45:23 +0100 Received: from return.false.org (localhost [127.0.0.1]) by return.false.org (Postfix) with ESMTP id DD84A4B267; Fri, 30 Mar 2007 09:45:20 -0500 (CDT) Received: from caradoc.them.org (dsl093-172-095.pit1.dsl.speakeasy.net [66.93.172.95]) by return.false.org (Postfix) with ESMTP id 8C4964B262; Fri, 30 Mar 2007 09:45:20 -0500 (CDT) Received: from drow by caradoc.them.org with local (Exim 4.63) (envelope-from ) id 1HXILw-0007yo-0W; Fri, 30 Mar 2007 10:45:20 -0400 Date: Fri, 30 Mar 2007 14:45:00 -0000 From: Daniel Jacobowitz To: gdb-patches@sourceware.org, Kevin Buettner Subject: [rfa] Extra warning in solib-svr4 Message-ID: <20070330144519.GC14014@caradoc.them.org> Mail-Followup-To: gdb-patches@sourceware.org, Kevin Buettner MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline User-Agent: Mutt/1.5.14+cvs20070313 (2007-03-13) X-IsSubscribed: yes 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/msg00361.txt.bz2 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. 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? -- Daniel Jacobowitz CodeSourcery 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