From 060fd343a8c2651cae35e284b419c86a90faa673 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?S=C3=B8ren=20Sandmann?= Date: Fri, 11 Aug 2006 15:41:46 +0000 Subject: [PATCH] Updates MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Fri Aug 11 11:41:15 2006 Søren Sandmann * TODO: Updates --- ChangeLog | 4 ++++ TODO | 18 ++++++++++++++++++ 2 files changed, 22 insertions(+) diff --git a/ChangeLog b/ChangeLog index 200614ed..52d7fb70 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,7 @@ +Fri Aug 11 11:41:15 2006 Søren Sandmann + + * TODO: Updates + 2006-08-08 Soren Sandmann * sysprof.c (main): Make the load_file() idle low priority to diff --git a/TODO b/TODO index 41ed8f19..828d4648 100644 --- a/TODO +++ b/TODO @@ -32,6 +32,8 @@ Before 1.0.3: Before 1.2: +* Rename stack_stash_foreach_by_address() to stack_stash_foreach_unique() + * Make it compilable against a non-running kernel. * commandline version should check that the output file is writable @@ -198,6 +200,22 @@ Before 1.2: return addresses, along with the location on the stack. This just might be enough for a userspace stack walker. + - Yet another: krh suggests hashing blocks of the stack, then + only sending the blocks that changed since last time. + + - every time you send a stackblock, also send a cookie. + + - whenever you *don't* send a stackblock, send the cookie + instead. That way you always get a complete stacktrace + conceptually. + + - also, that would allow the kernel to just have a simple + hashtable containing the known blocks. Though, that could + become large. Actually there is no reason to store the + blocks; you can just send the hashcode. That way you + would only need to store a list of hashcodes that we + have generated previously. + * If interrupt happens in kernel mode, send both kernel stack and user space stack, have userspace stitch them together. well, they could be stitched together in the kernel.