Date: Mon, 11 Dec 2006 20:01:31 -0500 From: Kris Kennaway <kris@obsecurity.org> To: Julian Elischer <julian@elischer.org> Cc: FreeBSD Current <current@freebsd.org>, Kris Kennaway <kris@obsecurity.org> Subject: Re: kdb_backtrace 'feature'? Message-ID: <20061212010131.GA88098@xor.obsecurity.org> In-Reply-To: <457DFB48.7020704@elischer.org> References: <457DE51C.905@elischer.org> <20061212001154.GA87602@xor.obsecurity.org> <457DFB48.7020704@elischer.org>
index | next in thread | previous in thread | raw e-mail
[-- Attachment #1 --] On Mon, Dec 11, 2006 at 04:43:52PM -0800, Julian Elischer wrote: > Kris Kennaway wrote: > >On Mon, Dec 11, 2006 at 03:09:16PM -0800, Julian Elischer wrote: > >>I often have the following: > >> > >> > >>code x() does some bad thing 'A'.. it's a known thing and you can tell > >>where it was done from (x()) but x() tell at the time that it is bad. > >> > >>at some later time, you discover 'A' is bad but now you don't know who > >>was teh bad caller of x() > >> > >> > >>The solution I'm looking for: > >> > >>when x() is called it calls kdb_backtrace, but has teh backtrace written > >>to a static 16K buffer instead of being put out the normal way. > >> > >>when A is found to be wrong, we can see who the last caller of x() was > >>and how it was called. > >> > >> > >>I am looking at it now.. but if anyone has any thoughts let me know... > > > >See <sys/stack.h> > > interesting... is there any documentation on how to use this and what > its limitations are? > > man -k stack doesn't provide anything.. grrrrr. I thought threre was a manpage but couldnt find it when I replied (hence citing the header). It's pretty trivial though, see kern/subr_stack.c and also grep for usage of stack_save. Kris [-- Attachment #2 --] -----BEGIN PGP SIGNATURE----- Version: GnuPG v1.4.6 (FreeBSD) iD8DBQFFff9rWry0BWjoQKURAp3qAKC+DxPUFXnUUcwy3nb54Vfh/rX+4QCcDFi3 xydWwPkI+HeKUISZ4X9vVg4= =ChLn -----END PGP SIGNATURE-----help
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?20061212010131.GA88098>
