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    [W:0.022 / U:61.996 seconds]
    ©2003-2016 Jasper Spaans. hosted at Digital OceanAdvertise on this site