From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 1555 invoked by alias); 1 Jul 2011 17:19:49 -0000 Received: (qmail 1546 invoked by uid 22791); 1 Jul 2011 17:19:48 -0000 X-SWARE-Spam-Status: No, hits=-6.5 required=5.0 tests=AWL,BAYES_00,RCVD_IN_DNSWL_HI,SARE_SUB_IMPROVE,SPF_HELO_PASS,T_RP_MATCHES_RCVD X-Spam-Check-By: sourceware.org Received: from mx1.redhat.com (HELO mx1.redhat.com) (209.132.183.28) by sourceware.org (qpsmtpd/0.43rc1) with ESMTP; Fri, 01 Jul 2011 17:19:24 +0000 Received: from int-mx01.intmail.prod.int.phx2.redhat.com (int-mx01.intmail.prod.int.phx2.redhat.com [10.5.11.11]) by mx1.redhat.com (8.14.4/8.14.4) with ESMTP id p61HJOBP017087 (version=TLSv1/SSLv3 cipher=DHE-RSA-AES256-SHA bits=256 verify=OK) for ; Fri, 1 Jul 2011 13:19:24 -0400 Received: from ns3.rdu.redhat.com (ns3.rdu.redhat.com [10.11.255.199]) by int-mx01.intmail.prod.int.phx2.redhat.com (8.13.8/8.13.8) with ESMTP id p61HJOCm018596; Fri, 1 Jul 2011 13:19:24 -0400 Received: from barimba (ovpn01.gateway.prod.ext.phx2.redhat.com [10.5.9.1]) by ns3.rdu.redhat.com (8.13.8/8.13.8) with ESMTP id p61HJNxj006721; Fri, 1 Jul 2011 13:19:23 -0400 From: Tom Tromey To: gdb-patches@sourceware.org Subject: Re: [RFA] Improve performance with lots of shared libraries References: <20110701165109.GA3399@redhat.com> Date: Fri, 01 Jul 2011 17:19:00 -0000 In-Reply-To: <20110701165109.GA3399@redhat.com> (Gary Benson's message of "Fri, 1 Jul 2011 17:51:09 +0100") Message-ID: User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/24.0.50 (gnu/linux) MIME-Version: 1.0 Content-Type: text/plain 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: 2011-07/txt/msg00029.txt.bz2 >>>>> "Gary" == Gary Benson writes: Gary> While working on a new linker-debugger interface I took some time out Gary> to do a bit of profiling to see exactly where gdb is spending its time Gary> with inferiors that load a lot of shared libraries, and it turned out Gary> that the top 30% of the profile was update_section_map and the things Gary> it calls. Nice. I think this will solve a problem I had: http://sourceware.org/ml/gdb-patches/2011-03/msg00606.html I haven't committed that yet, but I will, sooner or later. Gary> I'd really appreciate feedback from people who know this part of gdb Gary> well, as well as feedback from those users who are using gdb on Gary> many-solibs applications as to whether this patch helps. I think Pedro is the person to review it. The idea seems sound to me, but as you note, this code is very dense. I have a couple nits. Gary> +/* Nonzero if the location stopoed at is the shlib event breakpoint. */ Typo, "stopped". Gary> +static int Gary> +at_solib_event_breakpoint (struct execution_control_state *ecs) Gary> +{ Gary> + struct solib_event_breakpoint_helper_arg arg; Gary> + arg.prev_pc = ecs->event_thread->prev_pc; Blank line between declarations and code. Tom