Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 3 Oct 2005 20:04:04 +0200
From:      Pawel Jakub Dawidek <pjd@FreeBSD.org>
To:        Robert Watson <rwatson@FreeBSD.org>
Cc:        cvs-src@FreeBSD.org, src-committers@FreeBSD.org, Olivier Houchard <cognet@FreeBSD.org>, cvs-all@FreeBSD.org
Subject:   Re: cvs commit: src/sys/ddb db_command.c db_output.c
Message-ID:  <20051003180404.GA7247@garage.freebsd.pl>
In-Reply-To: <20051003094732.H71864@fledge.watson.org>
References:  <200510022257.j92MvV4N007297@repoman.freebsd.org> <20051003094732.H71864@fledge.watson.org>

next in thread | previous in thread | raw e-mail | index | archive | help

[-- Attachment #1 --]
On Mon, Oct 03, 2005 at 09:51:33AM +0100, Robert Watson wrote:
+> On Sun, 2 Oct 2005, Olivier Houchard wrote:
+> 
+> >cognet      2005-10-02 22:57:31 UTC
+> > FreeBSD src repository
+> > Modified files:
+> >   sys/ddb              db_command.c db_output.c
+> > Log:
+> > - Call db_setup_paging() for traceall.
+> > - Make it so one can't call db_setup_paging() if it has already been called
+> > before. traceall needs this, or else the db_setup_paging() call from
+> > db_trace_thread() will reset the printed line number, and override its
+> > argument.
+> > This is not perfect for traceall, because even if one presses 'q' while in
+> > the middle of printing a backtrace it will finish printing the backtrace
+> > before exiting, as db_trace_thread() won't be notified it should stop, but
+> > it is hard to do better without reworking the pager interface a lot more.
+> 
+> Thanks!
+> 
+> Is there any chance I can interest you in an idea phk, I, and a few others have been kicking around for a bit relating to smart small dumps? Specifically, we were 
+> discussing the idea of allowing a dumping mode in which rather than dumping all of kernel memory, we dump specifically the common and useful output from ddb, such as ps, 
+> show locked vnods, show alllocks, traceall, show allpcpu, and so on, basically in text format, to the dump partition.  Then the results can be pulled off easily in a format 
+> that is appropriate for e-mailing or submitting via a PR, even without a full debugging kernel, etc.  Among other things, these dumps would be much, much smaller than a 
+> memory dump, meaning they could be kept around like log files (/var/log/crash.log.0, ...), be e-mailed to the sysadmin, etc.  It would require some new magic in DDB and the 
+> dumping code, but almost all of the logic to generate the information from DDB could be reused, perhaps via an alternative pager or debug output device :-).

While we're at it, I'd love to see something like this to be done
automatically when I'm in X and can't see the panic.

I had two hard to reproduce panics recently and couldn't get any info.
This will help a lot.

BTW. Is this possible to configure the kernel to do dump on panic when
I'm in X and drop me into DDB when I'm in text console?

-- 
Pawel Jakub Dawidek                       http://www.wheel.pl
pjd@FreeBSD.org                           http://www.FreeBSD.org
FreeBSD committer                         Am I Evil? Yes, I Am!

[-- Attachment #2 --]
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.1 (FreeBSD)

iD8DBQFDQXKUForvXbEpPzQRAqpMAJ4sC2NR1nLnPtE9T88dZGU3fDtEfACg5IB3
CoYD2M/Ovn1lP0hmFFO/gfM=
=hQ/+
-----END PGP SIGNATURE-----

Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20051003180404.GA7247>