From owner-cvs-all@FreeBSD.ORG Thu Dec 27 10:20:14 2007 Return-Path: Delivered-To: cvs-all@FreeBSD.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id D3E5116A41A for ; Thu, 27 Dec 2007 10:20:14 +0000 (UTC) (envelope-from rwatson@FreeBSD.org) Received: from cyrus.watson.org (cyrus.watson.org [209.31.154.42]) by mx1.freebsd.org (Postfix) with ESMTP id A60F013C45A for ; Thu, 27 Dec 2007 10:20:14 +0000 (UTC) (envelope-from rwatson@FreeBSD.org) Received: from fledge.watson.org (fledge.watson.org [209.31.154.41]) by cyrus.watson.org (Postfix) with ESMTP id 3A1644A0B1; Thu, 27 Dec 2007 05:20:14 -0500 (EST) Date: Thu, 27 Dec 2007 10:20:14 +0000 (GMT) From: Robert Watson X-X-Sender: robert@fledge.watson.org To: Julian Elischer In-Reply-To: <4772E8F4.3080908@elischer.org> Message-ID: <20071227101217.P59006@fledge.watson.org> References: <200712260933.lBQ9XJi7039100@repoman.freebsd.org> <20071226181850.GA6300@green.homeunix.org> <20071226233301.K59006@fledge.watson.org> <4772E8F4.3080908@elischer.org> MIME-Version: 1.0 Content-Type: TEXT/PLAIN; charset=US-ASCII; format=flowed Cc: cvs-all@FreeBSD.org Subject: Re: cvs commit: src/sys/conf files src/sys/ddb db_command.c db_command.h db_lex.c db_lex.h db_main.c db_script.c ddb.h X-BeenThere: cvs-all@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: CVS commit messages for the entire tree List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Thu, 27 Dec 2007 10:20:14 -0000 On Wed, 26 Dec 2007, Julian Elischer wrote: >> Thanks! DDB capture output, scripting, and textdumps were pretty much what >> I had in the queue for DDB at this point. I'll see if I can't come up with >> some stuff, and look forward to hearing about how people use these ones. >> I'll also happily accept bug reports... >> >> Textdumps should open up the door for some interesting things in terms of >> bug management--I'd love to see someone put together some rc.d/rc.conf >> parts to do automated crash report submission (disabled by default, of >> course) and a database to hold the results. I suspect a moderate number of >> panic reports are lost on the basis that filing a proper bug report is >> fairly difficult (get out kgdb, etc), or that the boxes quietly reboot and >> the core dumps rot on disk (to be deleted when space runs out). Perhaps >> hoovering up those textdumps, especially if we can correlate them with one >> another using some automated processing, might be quite informative. Or >> just a good time sink :-). > > scripting is made almost infinitly more useful with some > registers/variables.. > > (especially if there is some simple looping.. allowing following of a linked > list or similar.) For the purposes of textdumps, the current simple scripting pretty much met my needs. One of the interesting advantages to DDB is its very domain-specificity: because it's intended to debug only one program, the kernel, it has a lot of commands that are quite aware of kernel semantics. As a result, unlike with a traditional general-purpose debugger, you don't need an extensive script language to report on data structures, the keeping of invariants, etc, because there is a trivial facility to add new commands to inspect data. For the purposes of scripting debugging at breakpoints for something other than basic reporting, and for teaching the scripting language how to manage data structures, you'd need something significantly more complex. To do much more with scripting than I've done would probably require a fairly major restructuring of DDB. Robert N M Watson Computer Laboratory University of Cambridge