Date: Thu, 22 Jan 2004 10:22:15 +1030 From: Greg 'groggy' Lehey <grog@FreeBSD.org> To: Ian Dowse <iedowse@maths.tcd.ie>, Bruce Evans <bde@zeta.org.au> Cc: cvs-all@FreeBSD.org Subject: Re: backtrace() and the console log (was Re: cvs commit: src/sys/alpha...) Message-ID: <20040121235215.GV86671@wantadilla.lemis.com> In-Reply-To: <20040121162731.F7489@gamplex.bde.org> <200401210148.aa95501@salmon.maths.tcd.ie> References: <200401210148.aa95501@salmon.maths.tcd.ie> <20040120203001.B99547@root.org> <20040121162731.F7489@gamplex.bde.org> <20040120144505.ccsc4kog4c88sgww@www.sweetdreamsracing.biz> <200401210148.aa95501@salmon.maths.tcd.ie>
next in thread | previous in thread | raw e-mail | index | archive | help
--l/3WCmqZNZ+BnHMk Content-Type: text/plain; charset=us-ascii Content-Disposition: inline On Wednesday, 21 January 2004 at 1:48:18 +0000, Ian Dowse wrote: > In message <20040120144505.ccsc4kog4c88sgww@www.sweetdreamsracing.biz>, Kenneth > Culver writes: >> Quoting Nate Lawson <nate@root.org>: >>> * Fix backtrace() so the output goes to the console log. Right now, we >>> get output that needs to be hand-transcribed or use a serial console. >> >> This is also very useful for when FreeBSD crashes when X is running. If X is >> running, the only option is a serial console, as you can't see the crash to >> transcribe it otherwise, and most people don't have the spare computer to use >> as a serial console. > > I've been using the following patch for a while to get backtrace() > to output to the kernel message buffer. Sending all ddb output via > printf might be undesirable for some cases, but I guess having it > configurable with a `debug.ddb_use_printf' sysctl that defaults to > the old behaviour would be ok? This sounds excellent. On Wednesday, 21 January 2004 at 16:40:46 +1100, Bruce Evans wrote: > On Tue, 20 Jan 2004, Nate Lawson wrote: > >> On Wed, 21 Jan 2004, Ian Dowse wrote: >>> I've been using the following patch for a while to get backtrace() >>> to output to the kernel message buffer. Sending all ddb output via >>> printf might be undesirable for some cases, but I guess having it >>> configurable with a `debug.ddb_use_printf' sysctl that defaults to >>> the old behaviour would be ok? > > It's undesireable in almost all cases, since it fills up the message > buffer with garbage. If it's "garbage", why are we ever producing it? Currently I'm getting a lot of LORs which don't get reported anywhere. I'd really like to catch this "garbage". >> Can't you just check that you aren't in DDB before printing to the message >> buf? >> >> Like this: >> >> if (boothowto & RB_KDB) { >> normal behavior to console via cnputc() >> } else { >> print to message buf instead >> } > > Something like that would be correct (test db_active, not boothowto...). Seems reasonable. Can somebody (iedowse?) commit it? Greg -- See complete headers for address and phone numbers. --l/3WCmqZNZ+BnHMk Content-Type: application/pgp-signature Content-Disposition: inline -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.2.0 (FreeBSD) iD8DBQFADxCvIubykFB6QiMRArMWAKCyE3aVZBeP4g+r4VSqV3jE+vFaYgCdHcPh hGyZN9tYKg2Rg71Jcm2JN6I= =SJPA -----END PGP SIGNATURE----- --l/3WCmqZNZ+BnHMk--
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20040121235215.GV86671>