lkml.org 
[lkml]   [2006]   [Apr]   [3]   [last100]   RSS Feed
Views: [wrap][no wrap]   [headers]  [forward] 
 
Messages in this thread
Patch in this message
/
Date
From
Subject[patch 5/9] s390: increase cio_trace debug event size.
From: Peter Oberparleiter <peter.oberparleiter@de.ibm.com>

[patch 5/9] s390: increase cio_trace debug event size.

Debugging events in cio_trace/hex_ascii are truncated for some trace
entries. Increase trace event size to 16 bytes to cover longer text
events, make CIO_HEX_EVENT an inline function that loops to cover bigger
hex events.

Signed-off-by: Peter Oberparleiter <peter.oberparleiter@de.ibm.com>
Signed-off-by: Martin Schwidefsky <schwidefsky@de.ibm.com>
---
drivers/s390/cio/cio.c | 2 +-
drivers/s390/cio/cio_debug.h | 22 ++++++++++++++--------
2 files changed, 15 insertions(+), 9 deletions(-)
diff -urpN linux-2.6/drivers/s390/cio/cio.c linux-2.6-patched/drivers/s390/cio/cio.c
--- linux-2.6/drivers/s390/cio/cio.c 2006-03-20 06:53:29.000000000 +0100
+++ linux-2.6-patched/drivers/s390/cio/cio.c 2006-04-03 18:46:38.000000000 +0200
@@ -67,7 +67,7 @@ cio_debug_init (void)
goto out_unregister;
debug_register_view (cio_debug_msg_id, &debug_sprintf_view);
debug_set_level (cio_debug_msg_id, 2);
- cio_debug_trace_id = debug_register ("cio_trace", 16, 4, 8);
+ cio_debug_trace_id = debug_register ("cio_trace", 16, 4, 16);
if (!cio_debug_trace_id)
goto out_unregister;
debug_register_view (cio_debug_trace_id, &debug_hex_ascii_view);
diff -urpN linux-2.6/drivers/s390/cio/cio_debug.h linux-2.6-patched/drivers/s390/cio/cio_debug.h
--- linux-2.6/drivers/s390/cio/cio_debug.h 2006-03-20 06:53:29.000000000 +0100
+++ linux-2.6-patched/drivers/s390/cio/cio_debug.h 2006-04-03 18:46:38.000000000 +0200
@@ -3,6 +3,11 @@

#include <asm/debug.h>

+/* for use of debug feature */
+extern debug_info_t *cio_debug_msg_id;
+extern debug_info_t *cio_debug_trace_id;
+extern debug_info_t *cio_debug_crw_id;
+
#define CIO_TRACE_EVENT(imp, txt) do { \
debug_text_event(cio_debug_trace_id, imp, txt); \
} while (0)
@@ -15,18 +20,19 @@
debug_sprintf_event(cio_debug_crw_id, imp , ##args); \
} while (0)

-#define CIO_HEX_EVENT(imp, args...) do { \
- debug_event(cio_debug_trace_id, imp, ##args); \
- } while (0)
+static inline void
+CIO_HEX_EVENT(int level, void *data, int length)
+{
+ while (length > 0) {
+ debug_event(cio_debug_trace_id, level, data, length);
+ length -= cio_debug_trace_id->buf_size;
+ data += cio_debug_trace_id->buf_size;
+ }
+}

#define CIO_DEBUG(printk_level,event_level,msg...) ({ \
if (cio_show_msg) printk(printk_level msg); \
CIO_MSG_EVENT (event_level, msg); \
})

-/* for use of debug feature */
-extern debug_info_t *cio_debug_msg_id;
-extern debug_info_t *cio_debug_trace_id;
-extern debug_info_t *cio_debug_crw_id;
-
#endif
-
To unsubscribe from this list: send the line "unsubscribe linux-kernel" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.tux.org/lkml/
\
 
 \ /
  Last update: 2006-04-03 19:25    [from the cache]
©2003-2014 Jasper Spaans. Advertise on this site