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

[Xen-devel] [RFC][PATCH] synchronize console on BUG()



The following patch syncs (and unsync) the console while we are in the
BUG() macro.

The separate externs (which I dislike) for these console calls are
there because including <xen/console.h> breaks all sorts of files, any
suggestions on how to solve this is welcome.

-JX

--

diff -r 1da8f53ce65b xen/include/xen/lib.h
--- a/xen/include/xen/lib.h     Tue Jun 27 18:24:08 2006 +0100
+++ b/xen/include/xen/lib.h     Wed Jun 28 09:56:34 2006 -0400
@@ -8,10 +8,14 @@
 #include <xen/xmalloc.h>
 #include <xen/string.h>
 
-#define BUG() do {                                     \
+extern void console_start_sync(void);
+extern void console_end_sync(void);
+#define BUG() do {                                      \
+    console_start_sync();                               \
     debugtrace_dump();                                  \
-    printk("BUG at %s:%d\n", __FILE__, __LINE__);      \
+    printk("BUG at %s:%d\n", __FILE__, __LINE__);       \
     FORCE_CRASH();                                      \
+    console_end_sync();                                 \
 } while ( 0 )
 
 #define BUG_ON(_p) do { if (_p) BUG(); } while ( 0 )

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


 


Rackspace

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