[PATCH] 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> Signed-off-by: Andrew Morton <akpm@osdl.org> Signed-off-by: Linus Torvalds <torvalds@osdl.org>
This commit is contained in:
parent
a7fbf6bba7
commit
06fbcb104a
|
@ -67,7 +67,7 @@ cio_debug_init (void)
|
||||||
goto out_unregister;
|
goto out_unregister;
|
||||||
debug_register_view (cio_debug_msg_id, &debug_sprintf_view);
|
debug_register_view (cio_debug_msg_id, &debug_sprintf_view);
|
||||||
debug_set_level (cio_debug_msg_id, 2);
|
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)
|
if (!cio_debug_trace_id)
|
||||||
goto out_unregister;
|
goto out_unregister;
|
||||||
debug_register_view (cio_debug_trace_id, &debug_hex_ascii_view);
|
debug_register_view (cio_debug_trace_id, &debug_hex_ascii_view);
|
||||||
|
|
|
@ -3,6 +3,11 @@
|
||||||
|
|
||||||
#include <asm/debug.h>
|
#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 { \
|
#define CIO_TRACE_EVENT(imp, txt) do { \
|
||||||
debug_text_event(cio_debug_trace_id, imp, txt); \
|
debug_text_event(cio_debug_trace_id, imp, txt); \
|
||||||
} while (0)
|
} while (0)
|
||||||
|
@ -15,18 +20,19 @@
|
||||||
debug_sprintf_event(cio_debug_crw_id, imp , ##args); \
|
debug_sprintf_event(cio_debug_crw_id, imp , ##args); \
|
||||||
} while (0)
|
} while (0)
|
||||||
|
|
||||||
#define CIO_HEX_EVENT(imp, args...) do { \
|
static inline void
|
||||||
debug_event(cio_debug_trace_id, imp, ##args); \
|
CIO_HEX_EVENT(int level, void *data, int length)
|
||||||
} while (0)
|
{
|
||||||
|
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...) ({ \
|
#define CIO_DEBUG(printk_level,event_level,msg...) ({ \
|
||||||
if (cio_show_msg) printk(printk_level msg); \
|
if (cio_show_msg) printk(printk_level msg); \
|
||||||
CIO_MSG_EVENT (event_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
|
#endif
|
||||||
|
|
Loading…
Reference in New Issue