From owner-svn-src-all@FreeBSD.ORG Tue Sep 21 15:27:38 2010 Return-Path: Delivered-To: svn-src-all@freebsd.org Received: from mx1.freebsd.org (mx1.freebsd.org [IPv6:2001:4f8:fff6::34]) by hub.freebsd.org (Postfix) with ESMTP id A45FC1065672; Tue, 21 Sep 2010 15:27:38 +0000 (UTC) (envelope-from avg@freebsd.org) Received: from citadel.icyb.net.ua (citadel.icyb.net.ua [212.40.38.140]) by mx1.freebsd.org (Postfix) with ESMTP id 5696E8FC12; Tue, 21 Sep 2010 15:27:37 +0000 (UTC) Received: from odyssey.starpoint.kiev.ua (alpha-e.starpoint.kiev.ua [212.40.38.101]) by citadel.icyb.net.ua (8.8.8p3/ICyb-2.3exp) with ESMTP id SAA09128; Tue, 21 Sep 2010 18:27:35 +0300 (EEST) (envelope-from avg@freebsd.org) Message-ID: <4C98CEE7.6060802@freebsd.org> Date: Tue, 21 Sep 2010 18:27:35 +0300 From: Andriy Gapon User-Agent: Mozilla/5.0 (X11; U; FreeBSD amd64; en-US; rv:1.9.2.9) Gecko/20100920 Lightning/1.0b2 Thunderbird/3.1.4 MIME-Version: 1.0 To: mdf@freebsd.org References: <201009211507.o8LF7iVv097676@svn.freebsd.org> In-Reply-To: X-Enigmail-Version: 1.1.2 Content-Type: text/plain; charset=ISO-8859-1 Content-Transfer-Encoding: 7bit Cc: svn-src-head@freebsd.org, svn-src-all@freebsd.org, src-committers@freebsd.org Subject: Re: svn commit: r212964 - head/sys/kern X-BeenThere: svn-src-all@freebsd.org X-Mailman-Version: 2.1.5 Precedence: list List-Id: "SVN commit messages for the entire src tree \(except for " user" and " projects" \)" List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Tue, 21 Sep 2010 15:27:38 -0000 on 21/09/2010 18:17 mdf@FreeBSD.org said the following: > On Tue, Sep 21, 2010 at 8:07 AM, Andriy Gapon wrote: >> Author: avg >> Date: Tue Sep 21 15:07:44 2010 >> New Revision: 212964 >> URL: http://svn.freebsd.org/changeset/base/212964 >> >> Log: >> kdb_backtrace: stack(9)-based code to print backtrace without any backend >> >> The idea is to add KDB and KDB_TRACE options to GENERIC kernels on >> stable branches, so that at least the minimal information is produced >> for non-specific panics like traps on page faults. >> The GENERICs in stable branches seem to already include STACK option. >> >> Reviewed by: attilio >> MFC after: 2 weeks >> >> Modified: >> head/sys/kern/subr_kdb.c >> >> Modified: head/sys/kern/subr_kdb.c >> ============================================================================== >> --- head/sys/kern/subr_kdb.c Tue Sep 21 12:57:43 2010 (r212963) >> +++ head/sys/kern/subr_kdb.c Tue Sep 21 15:07:44 2010 (r212964) >> @@ -28,6 +28,7 @@ >> __FBSDID("$FreeBSD$"); >> >> #include "opt_kdb.h" >> +#include "opt_stack.h" >> >> #include >> #include >> @@ -37,6 +38,7 @@ __FBSDID("$FreeBSD$"); >> #include >> #include >> #include >> +#include >> #include >> >> #include >> @@ -300,6 +302,15 @@ kdb_backtrace(void) >> printf("KDB: stack backtrace:\n"); >> kdb_dbbe->dbbe_trace(); >> } >> +#ifdef STACK >> + else { >> + struct stack st; >> + >> + printf("KDB: stack backtrace:\n"); >> + stack_save(&st); >> + stack_print(&st); > > I'd recommend using stack_print_ddb(), as that avoids any locking > which may hang depending on how the kernel panic'd. It seems that stack_print_ddb() depends on DDB? -- Andriy Gapon