From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 18224 invoked by alias); 29 Oct 2002 15:55:20 -0000 Mailing-List: contact gdb-patches-help@sources.redhat.com; run by ezmlm Precedence: bulk List-Subscribe: List-Archive: List-Post: List-Help: , Sender: gdb-patches-owner@sources.redhat.com Received: (qmail 18164 invoked from network); 29 Oct 2002 15:55:18 -0000 Received: from unknown (HELO e34.co.us.ibm.com) (32.97.110.132) by sources.redhat.com with SMTP; 29 Oct 2002 15:55:18 -0000 Received: from westrelay01.boulder.ibm.com (westrelay01.boulder.ibm.com [9.17.194.22]) by e34.co.us.ibm.com (8.12.2/8.12.2) with ESMTP id g9TFtFgU011500 for ; Tue, 29 Oct 2002 10:55:15 -0500 Received: from localhost.localdomain (pclarke.austin.ibm.com [9.53.216.242]) by westrelay01.boulder.ibm.com (8.12.3/NCO/VER6.4) with ESMTP id g9TFtFUF125178 for ; Tue, 29 Oct 2002 08:55:15 -0700 Subject: Re: [PATCH] plugin patch From: "Paul A. Clarke" To: gdb-patches@sources.redhat.com In-Reply-To: References: Content-Type: text/plain Content-Transfer-Encoding: 7bit Date: Tue, 29 Oct 2002 07:55:00 -0000 Message-Id: <1035906816.551.22.camel@pclarke> Mime-Version: 1.0 X-SW-Source: 2002-10/txt/msg00581.txt.bz2 On Tue, 2002-10-29 at 00:27, Eli Zaretskii wrote: > On Mon, 28 Oct 2002, Scott Moser wrote: > > Below is a patch to add plugin support to GDB. It exports a fairly > > simple programmable interface for people to extend the functionality of > > GDB via runtime loaded shared libraries in ways that may not fit with > > the direction of the main GDB tree (not cross-platform, not stable, > > niche audience...). > > IIRC, the FSF doesn't like to add to GNU software support for dynamically > loading arbitrary modules (for fear of non-free libraries being used thru > this). It would be a shame to shun useful functionality due only to a fear of certain uses. I know that, for other reasons, the Linux kernel added licensing information to the kernel modules, to determine whether a module would 'taint' the kernel. If it would be helpful to add that sort of information to the plugin interface to make the patch more palatable, that could certainly be done. This could also address support issues where, for example, GDB crashes because of a bad plugin. One could provide a lower level of support (or none) if GDB is 'tainted'. I think the Linux kernel module licensing awareness was added mostly to address support issues. The important thing, though, is that this is very useful functionality in a small and isolated patch. One of our goals for making use of GDB plugins is to add functionality which is "API-aware". In other words, add apriori knowledge of the internals or state of a library to GDB, to greatly enhance the debugging capabilities of GDB **with respect to that, and only that library**. A plugin interface would allow that useful functionality without requiring either library-specific changes to core GDB or maintaining a GDB patch indefinitely. Of course, the plugin itself has to be maintained, especially without a "hardened" ABI (but that's a much bigger deal for perhaps another day ;) Regards, Paul Clarke