From 63d2ded05d569a0d3c3bede34e038e9bd2743b90 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Axel=20D=C3=B6rfler?= Date: Tue, 13 Nov 2007 15:20:51 +0000 Subject: [PATCH] Added a "net_timer" KDL command that dumps all network timers. git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@22923 a95241bf-73f2-0310-859d-f6bbb57e9c96 --- src/add-ons/kernel/network/stack/utility.cpp | 22 ++++++++++++++++++++ 1 file changed, 22 insertions(+) diff --git a/src/add-ons/kernel/network/stack/utility.cpp b/src/add-ons/kernel/network/stack/utility.cpp index 925f6dfaa1..5e68e790be 100644 --- a/src/add-ons/kernel/network/stack/utility.cpp +++ b/src/add-ons/kernel/network/stack/utility.cpp @@ -505,6 +505,25 @@ is_timer_active(net_timer *timer) } +static int +dump_timer(int argc, char **argv) +{ + kprintf("timer hook data due in\n"); + + struct net_timer *timer = NULL; + while (true) { + timer = (net_timer *)list_get_next_item(&sTimers, timer); + if (timer == NULL) + break; + + kprintf("%p %p %p %Ld\n", timer, timer->hook, timer->data, + timer->due > 0 ? timer->due - system_time() : -1); + } + + return 0; +} + + status_t init_timers(void) { @@ -528,6 +547,9 @@ init_timers(void) goto err2; } + add_debugger_command("net_timer", dump_timer, + "Lists all active network timer"); + return resume_thread(sTimerThread); err1: