[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Xen-changelog] [xen-4.0-testing] timers: Improve debug-key printing.



# HG changeset patch
# User Keir Fraser <keir.fraser@xxxxxxxxxx>
# Date 1283154753 -3600
# Node ID c76c993f42129052ba1cc2170cf124a068a2644c
# Parent  9e4a0de7e8f85b59f4c731feed3952d2063a6ad2
timers: Improve debug-key printing.

Signed-off-by: Keir Fraser <keir.fraser@xxxxxxxxxx>
xen-unstable changeset:   d20cbccb6fea
xen-unstable date:        Wed Aug 18 14:22:48 2010 +0100

timers: Fix printk format specifier

Signed-off-by: Keir Fraser <keir.fraser@xxxxxxxxxx>
xen-unstable changeset:   60746a2c14a6
xen-unstable date:        Thu Aug 19 16:24:13 2010 +0100
---
 xen/common/timer.c |   25 ++++++++++++-------------
 1 files changed, 12 insertions(+), 13 deletions(-)

diff -r 9e4a0de7e8f8 -r c76c993f4212 xen/common/timer.c
--- a/xen/common/timer.c        Mon Aug 30 08:50:52 2010 +0100
+++ b/xen/common/timer.c        Mon Aug 30 08:52:33 2010 +0100
@@ -18,6 +18,7 @@
 #include <xen/timer.h>
 #include <xen/keyhandler.h>
 #include <xen/percpu.h>
+#include <xen/symbols.h>
 #include <asm/system.h>
 #include <asm/desc.h>
 
@@ -475,6 +476,13 @@ s_time_t align_timer(s_time_t firsttick,
     return firsttick + (period - 1) - ((firsttick - 1) % period);
 }
 
+static void dump_timer(struct timer *t, s_time_t now)
+{
+    printk("  ex=%8"PRId64"us timer=%p cb=%p(%p)",
+           (t->expires - now) / 1000, t, t->function, t->data);
+    print_symbol(" %s\n", (unsigned long)t->function);
+}
+
 static void dump_timerq(unsigned char key)
 {
     struct timer  *t;
@@ -483,28 +491,19 @@ static void dump_timerq(unsigned char ke
     s_time_t       now = NOW();
     int            i, j;
 
-    printk("Dumping timer queues: NOW=0x%08X%08X\n",
-           (u32)(now>>32), (u32)now);
+    printk("Dumping timer queues:\n");
 
     for_each_online_cpu( i )
     {
         ts = &per_cpu(timers, i);
 
-        printk("CPU[%02d] ", i);
+        printk("CPU%02d:\n", i);
         spin_lock_irqsave(&ts->lock, flags);
         for ( j = 1; j <= GET_HEAP_SIZE(ts->heap); j++ )
-        {
-            t = ts->heap[j];
-            printk ("  %d : %p ex=0x%08X%08X %p %p\n",
-                    j, t, (u32)(t->expires>>32), (u32)t->expires,
-                    t->data, t->function);
-        }
+            dump_timer(ts->heap[j], now);
         for ( t = ts->list, j = 0; t != NULL; t = t->list_next, j++ )
-            printk (" L%d : %p ex=0x%08X%08X %p %p\n",
-                    j, t, (u32)(t->expires>>32), (u32)t->expires,
-                    t->data, t->function);
+            dump_timer(t, now);
         spin_unlock_irqrestore(&ts->lock, flags);
-        printk("\n");
     }
 }
 

_______________________________________________
Xen-changelog mailing list
Xen-changelog@xxxxxxxxxxxxxxxxxxx
http://lists.xensource.com/xen-changelog


 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.