From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 12081 invoked by alias); 30 Nov 2005 01:58:55 -0000 Received: (qmail 12065 invoked by uid 22791); 30 Nov 2005 01:58:54 -0000 X-Spam-Check-By: sourceware.org Received: from mx1.redhat.com (HELO mx1.redhat.com) (66.187.233.31) by sourceware.org (qpsmtpd/0.31) with ESMTP; Wed, 30 Nov 2005 01:58:52 +0000 Received: from int-mx1.corp.redhat.com (int-mx1.corp.redhat.com [172.16.52.254]) by mx1.redhat.com (8.12.11/8.12.11) with ESMTP id jAU1wl5s023940; Tue, 29 Nov 2005 20:58:47 -0500 Received: from potter.sfbay.redhat.com (potter.sfbay.redhat.com [172.16.27.15]) by int-mx1.corp.redhat.com (8.11.6/8.11.6) with ESMTP id jAU1wkV22974; Tue, 29 Nov 2005 20:58:46 -0500 Received: from [172.16.24.50] (bluegiant.sfbay.redhat.com [172.16.24.50]) by potter.sfbay.redhat.com (8.12.8/8.12.8) with ESMTP id jAU1wiSY017974; Tue, 29 Nov 2005 20:58:44 -0500 Message-ID: <438D0753.4050106@redhat.com> Date: Wed, 30 Nov 2005 11:39:00 -0000 From: Michael Snyder User-Agent: Mozilla Thunderbird (X11/20050322) MIME-Version: 1.0 To: Jim Blandy CC: GDB Patches , gdb@sources.redhat.com, drow@false.org, Eli Zaretskii Subject: Re: [RFC] multi-process gdb (forks, checkpoints) References: <438B8B6F.6010706@redhat.com> <8f2776cb0511291738o61780660n68b59380d2747540@mail.gmail.com> In-Reply-To: <8f2776cb0511291738o61780660n68b59380d2747540@mail.gmail.com> Content-Type: text/plain; charset=ISO-8859-1; format=flowed Content-Transfer-Encoding: 7bit X-IsSubscribed: yes Mailing-List: contact gdb-patches-help@sourceware.org; run by ezmlm Precedence: bulk List-Subscribe: List-Archive: List-Post: List-Help: , Sender: gdb-patches-owner@sourceware.org X-SW-Source: 2005-11/txt/msg00504.txt.bz2 Jim Blandy wrote: > What happens if we fork, and then one of the forks unloads or loads a > shared library? > > We're really crippled by our symtab data structures. Hmmm... unload would be the bigger problem, I suppose. I'd look at it this way -- this is really a subset of "debugging separate processes". The subset is, processes that share the same symbol set. What you suggest is crowding that boundary. ;-) We know that the set of programs that can be debugged this way is prescribed. Can't do multi-threaded programs, for instance.